Skip to content

Latest commit

 

History

History
18 lines (13 loc) · 465 Bytes

dynamic_programming.md

File metadata and controls

18 lines (13 loc) · 465 Bytes

与分而治之思想不同的是,动态编程注重在解决重复的子问题上面能够做到可复用, 一般的,这种方式用来优化问题

动态编程的特性:

  • 问题能够拆解为较小的重叠子问题
  • 通过较小问题的最优解从而找到最佳方案
  • 动态算法是记忆化的

可以解决的问题示例:

  1. 斐波那契数列
  2. 背包问题
  3. 河内塔
  4. 全双最短路径
  5. Dijkstra 最短路径
  6. 项目进度