第四章贪心算法1答案.ppt

一、Greedy算法的基本原理 (Elements of Greedy Algorithms) Greedy算法的基本思想 是求解最优化问题的算法,包含一系列步骤 每一步都在一组选择中做当前看最好的选择 希望通过做局部优化选择达到全局优化选择 Greedy算法不一定总产生优化解 Greedy算法是否产生优化解,需要严格证明 贪心算法总是做出在当前看来是最好的选择。也就是说贪心算法并不从整体最优上加以考虑,所以贪心算法不是对所有问题都能得到整体最优解。 0-1背包问题:给定n种物品和一个背包。物品i的重量是wi,价值为vi,背包的容量为C。如何选择物品装入背包,使得装入背包中的物品的总价值最大?对每种物品i只有两种选择,要么装入,要么不装入,不能将物品i装入背包多次,也不能只装入物品i的一部分。因此,该问题称为0-1背包问题。 对于0-1背包问题,贪心选择之所以不能得到最优解是因为它无法保证最终将背包装满,部分背包空间的闲置使每公斤背包空间所具有的价值降低了。 虽然贪心算法不是对所有问题都能得到整体最优解,但对范围相当广的许多问题能产生整体最优解。如:单源最短路经问题, 最小生成树问题,哈夫曼编码问题等。 在一些情况下,即使贪心算法不能得到整体最优解,但却是最优解的很好的近似解。 如:在下图中求从V0到V3的最短路径问题。 证明算法所求

文档评论(0)

1亿VIP精品文档

相关文档