
程序员面试刷题用什么书比较好-tianchi531831:阿里云数智服务创新挑战赛——服务调度比赛
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
此简介应聚焦于编程学习和竞赛准备,而非直接与特定书籍推荐相关。鉴于题目提供的信息,可以生成如下简介:
本话题探讨程序员面试及日常技能提升中适宜的刷题资料选择,并结合“阿里云数智服务创新挑战赛——服务调度比赛”的背景,分享实战经验和资源建议。
程序员面试刷题推荐的书籍有很多,具体选择哪一本取决于个人的学习风格和需求。对于编程题目练习来说,《剑指Offer》、《编程珠玑》以及LeetCode官方出版的相关书籍都是不错的选择。
关于优化算法的具体方案如下:
执行顺序:./main ./opt ./opt2 ./work
根据不同的参数设置,结果会有所波动。总体效果为:
- 效率值: 0.400+,最好达到过0.4015+(远高于冠军队伍的效率值:0.377)
- 超时量:<1e-3,在许多情况下都能避免超时
- 方差一般在0.37左右
main.cpp中的初始解生成算法流程如下:
按时间顺序遍历每一个任务,用当前空闲人员和任务建立二分图。边权为将该任务分配给某一专家后,会在哪个时间点完成。使用最小费用流算法求得二分图的最小匹配,并据此进行任务分配。
程序中存在多个可以调整的参数,如任务聚集量、人员聚集量等。
opt.cpp和opt2.cpp中的第一次优化流程如下:
读入第一步生成的初始解,尝试以下调优策略:改派执行特定任务的专家;交换两位专家的任务。方差公式拆分后,在O(1)时间内维护每一项(具体见代码)。CheckTime函数用于时间控制。
在第二次优化中(work.cpp),首先加入空闲专家填补超时的时间,然后不断尝试以下调整以进一步提高效率和减少方差。
全部评论 (0)
还没有任何评论哟~


