贪心法
基本思想:
- 从问题的某一个初始解开始,在每一个阶段都根据贪心策略来做出当前最优的决策,逐步逼近给定的目标,尽可能快地求得更好的解.当达到算法中的某一步不能再继续前进时, 算法终止。
即:以逐步的局部最优,达到最终的全局最优
性质:
- 1.贪心选择性质: 指所求问题的整体最优解可以通过一系列局部最优的选择获得。
即: 通过一系列的逐步局部最优选择使得最终的选择方案是全局最优的。 其中:每次所做的选择,可以依赖于以前的选择,但不依赖于将来所做的选择。- 2.最优子结构性质: 指一个问题的最优解一定包含其子问题的最优解.称此问题具有最优子结构性质。
即: 一个问题能够分解成各个子问题来解决,通过各个子问题的最优解能递推到原问题的最优解,那么原问题的最优解一定包含各个子问题的最优解。
解题步骤:
- 1.分解: 将原问题分解为若干个相互独立的阶段(子问题)。
- 2.解决: 对于每个阶段依据贪心策略进行贪心选择,求出局部的最优解。
- 3.合并: 将各个阶段的解合并为原问题的一个可行解。
特点:
- 1.贪心法多运用于组合优化问题。
- 2.求解过程是多步判断过程,最终的判断序列对应于问题的最优解
- 3.判断依据某种短视(局部)的贪心选择性质,性质的好坏决定了算法的成败
- 4.贪心法必须进行正确性证明(数学归纳法证明)