贪心算法将问题分解为一个个子问题。贪心算法的最大条件就是每个子问题求出最优解,就一定能得到最终问题的最优解。毫无疑问,最重要的就是如果将问题分解为这样的子问题。
背包问题
背包问题是典型的动态规划问题!是不能使用贪心算法的!然而我们考虑这样一种背包问题:在选择物品i装入背包时,可以选择物品的一部分,而不一定要全部装入背包。这时便可以使用贪心算法求解了。和生活中的规律一样,我们只需要选取性价比最高的就可以了。
贪心算法将问题分解为一个个子问题。贪心算法的最大条件就是每个子问题求出最优解,就一定能得到最终问题的最优解。毫无疑问,最重要的就是如果将问题分解为这样的子问题。
背包问题是典型的动态规划问题!是不能使用贪心算法的!然而我们考虑这样一种背包问题:在选择物品i装入背包时,可以选择物品的一部分,而不一定要全部装入背包。这时便可以使用贪心算法求解了。和生活中的规律一样,我们只需要选取性价比最高的就可以了。