任务调度并行算法的Java简单实现

本文介绍了一个Java技术专家的经验分享,讲述了如何有效地帮助Java工程师系统自学,包括提供完整的资源包(涵盖基础知识到高级架构),强调重复学习的重要性,以及推荐《互联网大厂面试真题解析》等学习资料获取方式。
摘要由CSDN通过智能技术生成

//get min array group index

System.out.println(“new value:”+test_array[i]);

min_grp_no = getMinGrpNo(array_sum_group);

max_index = getMaxIndex(array_group[min_grp_no]);

array_group[min_grp_no][max_index+1] = test_array[i];

array_sum_group[min_grp_no] += test_array[i];

System.out.println(array_group[min_grp_no][max_index+1]+“,”+array_group[min_grp_no][max_index]+“,”+array_sum_group[min_grp_no]);

}

System.out.println(array_group);

}

public int getMinGrpNo(int[] array) {

int temp_value = 0;

int min_index = 0;

if(array.length>1) {

temp_value = array[0];

for (int i = 1; i < array.length; i++) {

if (temp_value > array[i]) {

temp_value = array[i];

min_index = i;

}

}

}

System.out.println(“getMinGrpNo:”+min_index+" value:"+temp_value);

return min_index;

}

public int getMaxIndex(int[] array) {

int temp_value = 0;

int max_index = 0;

if(array.length>1) {

temp_value = array[0];

for (int i = 1; i < array.length; i++) {

if(array[i] != 0) {

if (temp_value > array[i]) {

temp_value = array[i];

max_index = i;

}

}

}

}

System.out.println(“getMaxIndex:”+max_index+" value:"+temp_value);

return max_index;

}

}

程序的执行结果如下,整体的思路是生成随机数的数组,然后对数组排序,然后对数组做数据处理,每次添加新元素都需要对每组累计值做一个排序,累计值最小的可以添加新的元素,直至元素被添加完。

所以自己在逻辑的部分写了两个函数来单独处理:

一个是得到累计值最小的数组,得到数组的下标

另外一个是查找数组中元素的最大下标,比如数组有3个元素,那么最大下标就是2(数组从0开始)

31

33

41

57

59

59

79

86

init value :86

init value :79

init value :59

init value :59

new value:57

getMinGrpNo:2 value:59

getMaxIndex:0 value:59

57,59,116

new value:41

getMinGrpNo:3 value:59

getMaxIndex:0 value:59

41,59,100

new value:33

getMinGrpNo:1 value:79

getMaxIndex:0 value:79

33,79,112

new value:31

getMinGrpNo:0 value:86

getMaxIndex:0 value:86

31,86,117

new value:28

getMinGrpNo:3 value:100

getMaxIndex:1 value:41

28,41,128

new value:18

getMinGrpNo:1 value:112

getMaxIndex:1 value:33

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

总结

上述知识点,囊括了目前互联网企业的主流应用技术以及能让你成为“香饽饽”的高级架构知识,每个笔记里面几乎都带有实战内容。

很多人担心学了容易忘,这里教你一个方法,那就是重复学习。

打个比方,假如你正在学习 spring 注解,突然发现了一个注解@Aspect,不知道干什么用的,你可能会去查看源码或者通过博客学习,花了半小时终于弄懂了,下次又看到@Aspect 了,你有点郁闷了,上次好像在哪哪哪学习,你快速打开网页花了五分钟又学会了。

从半小时和五分钟的对比中可以发现多学一次就离真正掌握知识又近了一步。

人的本性就是容易遗忘,只有不断加深印象、重复学习才能真正掌握,所以很多书我都是推荐大家多看几遍。哪有那么多天才,他只是比你多看了几遍书。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
ZL-1712757510086)]

人的本性就是容易遗忘,只有不断加深印象、重复学习才能真正掌握,所以很多书我都是推荐大家多看几遍。哪有那么多天才,他只是比你多看了几遍书。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值