代码改变世界

算法第5章上机实践

2018-12-24 19:45 by WallWallWall, 66 阅读, 0 推荐, 收藏, 编辑
摘要:1.实践题目 :工作分配问题 2.问题描述:设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3.算法描述:剪枝后的解空间树如下 所以解空间有(10,3,5),(10,4,4),(2,2, 阅读全文

算法第5章作业

2018-12-24 19:36 by WallWallWall, 116 阅读, 0 推荐, 收藏, 编辑
摘要:1.你对回溯算法的理解 回溯法是一种深度优先的选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回“回溯点”重新选择,这也就是回溯的基本过程。回溯法与穷举类似,却通过限界函数和约束函数剪枝来达到算法的精简;与动态规划类似,却以更为固定易套用的方法而更 阅读全文

第四章作业心得

2018-12-02 21:50 by WallWallWall, 93 阅读, 0 推荐, 收藏, 编辑
摘要:1.你对贪心算法的理解 贪心算法,在运用的时候,我觉得要从问题本身出发,找到需要求得的某个局部最优——做出当前看来最好的选择。每一步考虑的都是这一次的局部最优选择,在判断最优选择的条件上,往往是一个问题解决的关键。若下一个数据和部分最优解连在一起不再是可行解时,就不把该数据添加到部分解中,直到把所有 阅读全文

第四章实践报告

2018-12-02 21:39 by WallWallWall, 123 阅读, 0 推荐, 收藏, 编辑
摘要:一、题目: 程序存储问题 二、题目描述: 设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是 li,1≤i≤n。 程序存储问题要求确定这n 个程序在磁带上的一个存储方案, 使得能够在磁带上存储尽可能多的程序。 对于给定的n个程序存放在磁带上的长度,计算磁带上最多 阅读全文

算法第3章上机实践报告

2018-11-12 00:45 by WallWallWall, 114 阅读, 0 推荐, 收藏, 编辑
摘要:1.实践题目 2.问题描述 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。 3.算法描述 a.建立一个与输入二维数组等大的中间二维数组; b.将二维数组代表的数组金字塔的底层输入到中 阅读全文

算法第三章作业

2018-11-12 00:19 by WallWallWall, 122 阅读, 0 推荐, 收藏, 编辑
摘要:1.对动态规划算法的理解 如书上写的,动态规划算法与分治算法类似,基本思想也是将问题划分为若干子问题再进行求解。我个人理解中,动态规划算法在进行问题的分解时,会选择一条最优解答路线来将重复的问题通过同样的代码进行实现,免去了冗杂的重复代码。所以时常看到的动态规划算法都会显得十分的“精妙”。动态规划算 阅读全文

算法第二章上机实践报告

2018-10-14 21:02 by WallWallWall, 164 阅读, 0 推荐, 收藏, 编辑
摘要:1、实践题目:二分查找 2、问题描述:输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 3、算法描述:二分查找——将需要查找的数组分两边,不断的进行分半,将要查找的数值与数组的中 阅读全文

第二章作业

2018-10-11 01:10 by WallWallWall, 116 阅读, 0 推荐, 收藏, 编辑
摘要:对于二分法的思想体会: 二分法本身思想并不难以理解,但在代入不同用法的时候需要特别注意实际情况的要求,例如:二分合并法,二分思想展开的快速排序法等。 也是因为算法本身运用了分治策略,所以快速排序在进行功能的时候,重复的设置、对比数组的middle值来很大程度的降低了算法的运行时间,这也是为什么快速排 阅读全文

国庆假期作业总结

2017-10-09 00:12 by WallWallWall, 217 阅读, 0 推荐, 收藏, 编辑
摘要:在编写ch3作业中要求的第三题关于: 设a, b, c为3条边长,s=(a+b+c)/2,面积:Area =sqrt( s* (s-a) * (s-b)*(s-c)),要求保留两位小数。 在编写的第一遍借由以前的编程习惯经验,我选择直接一个基础int头文件开始编程,之后的sqrt、setprecis 阅读全文