实验报告Created with an evaluation copy of Aspose.Words. To discover the full versions of our APIs please visit: :products.asposewords课程名称: 实验项目: 贪心算法 指导教师
贪心算法实验目的和要求(1)了解前缀编码的概念理解数据压缩的基本方法(2)掌握最优子结构性质的证明方法(3)掌握贪心法的设计思想并能熟练运用(4)证明哈夫曼树满足最优子结构性质(5)设计贪心算法求解哈夫曼编码方案(6)设计测试数据写出程序文档 实验内容设需要编码的字符集为{d1 d2 … dn}它们出现的频率为 {w1 w2 … wn}应用哈夫曼树构造最短的不等长编码方案 实验环境
贪心算法贪心算法(又称贪婪算法)是指在对问题求解时总是做出在当前看来是最好的选择也就是说不从整体最优上加以考虑他所做出的仅是在某种意义上的局部最优解贪心算法不是对所有问题都能得到整体最优解但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解 贪心法是指从问题的初始状态出发通过若干次的贪心选择而得出最优解或较优解的一种阶梯方法事实上从贪心算法贪心一词便可以看出贪心法总是做出在当
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级贪心算法主讲人:张云聪目录什么是贪心算法1贪心算法典型例题2一些细节琐事3推荐题目4什么是贪心算法贪心算法(又称贪婪算法)是指在对问题求解时总是做出在当前看来是最好的选择也就是说不从整体最优上加以考虑他所做出的仅是在某种意义上的局部最优解贪心算法不是对所有问题都能得到整体最优解但对范围相当广泛的许多问题他能产生整体最优解或者是
2template<class Type>void GreedySelector(int n Type s[] Type f[] bool A[]){ A[1]=true int j=1 for (int i=2i<=ni) { if (s[i]>=f[j]) { A[i]=true j=i } else A[i]=false
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级贪心算法 ACM学习小组新生入门指导教程湘南学院ACM协会贪心算法学习目的:掌握贪心算法学习要求:熟练运用贪心算法解决以下问题 1.背包问题 2.活动会场安排问题 3.最小代价生成树 4.哈弗曼编码
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级贪心算法顾名思义贪心算法总是作出在当前看来最好的选择也就是说贪心算法并不从整体最优考虑它所作出的选择只是在某种意义上的局部最优选择当然希望贪心算法得到的最终结果也是整体最优的虽然贪心算法不能对所有问题都得到整体最优解但对许多问题它能产生整体最优解如单源最短路经问题最小生成树问题等在一些情况下即使贪心算法不能得到整体最优解其最终
Click 背包问题最小生成树最短路径作业调度等等[算法思路]将n个活动按结束时间非减序排列依次考虑活动i 若i与已选择的活动相容则添加此活动到相容活动子集.i[算法思路] 将装船过程划为多步选择每步装一个货箱每次从剩下的货箱中选择重量最轻的货箱.如此下去直到所有货箱均装上船或船上不能再容纳其他任何一个货箱20算法设计与分析 > 贪心算法价值= 100单位价值= 504C=算法设计与分析 > 贪
贪心算法的基本要素0-1背包问题: 给定n种物品和一个背包物品i的重量是Wi其价值为Vi背包的容量为C应如何选择装入背包的物品使得装入背包中物品的总价值最大 贪心算法的基本要素2.贪心选择性质 可以证明最优装载问题具有贪心选择性质 3.最优子结构性质最优装载问题具有最优子结构性质由最优装载问题的贪心选择性质和最优子结构性质容易证明算法loading的正确性算法loading的主要计算
#
违法有害信息,请在下方选择原因提交举报