动态规划介绍

一、动态规划

动态规划方法通常用来求解最优化问题(optimization problem)。这类问题可以有很多可行解,每个解都有一个值,我们希望寻找具有最优值(最小值或最大值)的解。我们称这样的解为问题的一个最优解(an optimal solution),而不是最优解(the optimal solution),因为可能有多个解都达到最优值。

我们通常按如下4个步骤来设计一个动态规划算法:

  1. 刻画一个最优解的结构特征。
  2. 递归地定义最优解的值。
  3. 计算最优解的值,通常采用自底向上的方法。
  4. 利用计算出的信息构造一个最优解。

步骤1~3是动态规划算法求解问题的基础。如果我们仅仅需要一个最优解的值,而非解本身,可以忽略步骤4。如果确实要做步骤4,有时就需要在执行步骤3的过程中维护一些额外信息,以便用来构造一个最优解。

二、案例

后面逐渐添加

  1. 钢条切割 https://blog.csdn.net/nie2314550441/article/details/106270866
  2. 剪绳子 https://blog.csdn.net/nie2314550441/article/details/105800918
  3. 最大矩形 https://blog.csdn.net/nie2314550441/article/details/106312324

猜你喜欢

转载自blog.csdn.net/nie2314550441/article/details/106269381
今日推荐