随笔分类 - 中国科学院大学-计算机算法设计与分析
摘要:计算机算法设计与分析-复习29(货郎担问题证明) 问题描述 证明满足最优性原理 FIFO/LC 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习25(机器分配问题) 例题 解答-序偶法 Si代表前i个工厂的机器分配情况,最后一个序偶的盈利就是前i个工厂的最大收益。 序偶表示法:(盈利,数量) Sj(i+1)代表第i+1个工厂分配第j台机器的情况 在决策过程中,我们要去掉不符合要求的序列 超过总数量 在数量相同的情况
阅读全文
摘要:计算机算法设计与分析-复习24(近似算法) 子集和问题 例题-暴力法 例题-近似法 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习23(图灵机) 例题 例题1 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习22(字符串匹配问题) BF算法(暴力匹配) KMP算法 next数组的计算 例题 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习14(每对节点间最短路径) Floyd算法 小技巧 A^x矩阵,x行,x列不变 看x列上的每一行元素,如果: 为正无穷,那么该行元素照抄 为一个正数。那么该行小于等于该正数的元素照抄。 这个技巧,仅限为都是正权边的情况。 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师
阅读全文
摘要:计算机算法设计与分析-复习12(最短路径) Dijkstra算法 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习11(最小生成树) Prim算法 Kruskal算法 破圈法 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习10(哈夫曼编码与哈夫曼树) 前置知识 例题 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习8(贪心法求解背包问题) 前置知识 这个背包问题并不是0-1背包问题,即:我们可以将物品的一部分放入到背包中。 做题步骤 先按照密度(pi/wi)对背包从大到小进行排序。 按照密度的次序装背包,如果可以装得下整个背包,那么就装。 如果剩余容量无法装下整个背包,那么就装一部分
阅读全文
摘要:计算机算法设计与分析-复习9(贪心法求解作业排序问题) 问题描述 例题 注:求解带有限期的作业排序问题时,应先将pi从大到小排序,之后考虑每一个作业 注:可以证明,按照上述做法,对于作业排序问题,总是可以得到最优解 两种算法-算法1 注:这里的每个作业的执行时间都是单位时间 算法1-例题 注:考试的
阅读全文
摘要:计算机算法设计与分析-复习7(寻找第k大元素-分治法) 课后练习 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习6(快速排序) 前置知识-快速排序算法 这里的快速排序算法以老师为准 注:在划分元素时,基准元素为第一个元素 注:数组下标从1开始,第n+1个元素有定义为正无穷 注:i初始从1开始,先+1,再判断(因为1是基准元素),j初始从n+1开始,同样是先+1,再判断 前置知识-算法
阅读全文
摘要:计算机算法设计与分析-复习5(归并排序) 前置知识 这里的归并排序的具体做法,以老师的方法为准 注意:在进行模拟的时候,一定要按照函数调用的次序进行划分和归并 注意:在进行元素比较的时候,一定要注意是否有等于号,它是排序算法是否稳定的基础 例题 课后题 致谢 [1] 以上图片来自于中国科学院大学马丙
阅读全文
摘要:计算机算法设计与分析-复习4(二分检索) 前置知识 二元比较树:根据二分查找的过程而建立起来的二叉树。节点分为:内节点和外节点两种。 内节点:代表一次元素比较,代表成功检索的情况,存放mid下标值,用圆形节点表示。 外节点:用方形节点表示,代表不成功的情况。 内部路径长度:由根到所有内节点的距离之和
阅读全文
摘要:计算机算法设计与分析-复习3(对策树) 做题步骤 按照后根次序来进行遍历 在遍历的过程中,判断是否可以剪枝 如何判断是α剪枝还是β剪枝?(看剪枝的边的爷爷节点,如果是求最小值的节点,那么就是β剪枝,如果是求最大值的节点,那么就是α剪枝) α-β剪枝的规则 α-β剪枝的例题 致谢 [1] 以上图片来自
阅读全文
摘要:计算机算法设计与分析-复习28(布线问题) 问题描述 算法思想 算法实现 执行过程 注意:R和C分别代表行和列 寻找最短的路径,直接往前回溯即可。 致谢 [1] 以上图片来自于中国科学院大学马丙鹏老师计算机算法设计与分析课程
阅读全文
摘要:计算机算法设计与分析-复习27(15迷问题) 问题描述 一些概念 POSITION(i)代表编号为i的牌在初始状态中的实际位置,注意:POSITION(16)表示空格的位置。 LESS(i)的数量等于:编号比i小,但是在初始状态中的实际位置比它大的牌的数量。(实际寻找时,往后看) 引入量X,若空格落
阅读全文
摘要:计算机算法设计与分析-复习26(线性规划) 普通单纯形法 目标函数用非基变量表达 当目标函数为max时,所有检验数λj≤0 ( j=1, …, n) 时,基本可行解为最优解。 求得最优解后,需要令非基变量为0,得到基本可行解。 当目标函数为max时,进基变量的选取:选择λk>0的非基变量xk。如果有
阅读全文
摘要:计算机算法设计与分析-概念复习 最优性原理 无论过程的初始状态和初始决策是什么,其余决策都必须相对于初始决策所产生的状态构成一个最优决策子序列。 如果整个序列是最优决策序列,则该序列中的任何一段子序列都将是该子序列所代表子问题的最优决策子序列。(全局最优->局部最优) 分治和动态规划的区别 共同点:
阅读全文