动态决策的过程

  • 把原问题划分成多个“阶段”,依次来做“决策”,得到当前的局部解
  • 每次决策依赖于当前的“状态”,随即引起状态的转移
  • 一个决策序列就是在变化的状态中产生出来的
  • 这种多阶段决策最优化,解决问题的过程就称为 动态规划

最优化问题

  • 动态规划通常用来求解最优化问题
  • 可以有很多可行解,每个解都对应一个值,我们希望找到具有最优值的解

一般会把每个决策的结果缓存起来。

应用场景

  • 最优二叉搜索树、最长公共子序列、背包问题等等

练习题

视频图解 动态规划 正则表达式 - 正则表达式匹配 - 力扣(LeetCode)