Greedy algorithm basic principle

发布时间 2023-10-20 11:54:53作者: 0x7F

贪心算法是以动态规划方法为基础的,在每个贪心算法之下,几乎总有一个更繁琐的动态规划算法。

贪心算法和动态规划不同之处在于:是否需要考虑子问题的解
贪心算法并不考虑子问题,直接在当前步骤中做出选择
动态规划无论是自底向上,

贪心算法设计步骤

  1. 将最优化问题转化为这样的形式:对其做出一次选择后,只剩下一个子问题需要求解。
  2. 证明做出贪心选择后,原问题总是存在最优解,即贪心选择总是安全的。
  3. 证明做出贪心选择后,剩余的子问题满足性质:其最优解与贪心选择组合即可得到原问题的最优解,这样就得到了最优子结构。