一个贪心算法总是做出当前最好的选择,也就是说它期望通过局部最优解从而得到全局最优的解决方案。
贪心算法的注意事项:
- 没有后悔药。一旦做出选择,就无法反悔。
- 有可能得到的不是最优解而是最优解的近似解。
- 选择什么样的贪心策略,直接决定算法的好坏。
贪心算法的规则(贪亦有道):
- 贪心选择:原问题的整体最优解可以通过一系列局部最优的选择得到。
- 最优子结构(关键):一个问题的最优解包含其子问题的最优解。
贪心秘籍:
- 贪心策略 :根据求解的目标而定。
- 局部最优解。
- 全局最优解:把所有的局部最优解合成为原来问题的一个最优解。
贪心应用:冒泡排序使用了贪心算法,它的贪心策略就是每一次从剩下的序列中选一个最大的数,把这些选出来的数放在一起,从而得到排序结果。