定义
将多阶段决策问题进行公式化
总体思想
将待求解问题分解成若干个子问题(PS:是不是和分治法很像,但是他的子问题并不是相互独立的,有的会被重复好多次,而且还是分阶段的)
我们将已解决的子问题答案保存,那么在需要时就可以查询,避免重复计算
基本步骤
- 找出最优解的性质,并刻画其结构特征
- 递归地定义最优值
- 以自底向上的方式计算出最优值
- 根基计算最优值时得到的信息,构造最优解
(PS:以我通俗的理解就是拥有最优子结构性质并且子问题中存在重叠计算,即同一个问题可能会在不同子问题中被重复计算,我们可以制作一个查询表,以免重复计算)
性质:最优子结构、重叠子问题
最优子结构
以我通俗的理解就是最优解能够用子问题的解相加解出来
备忘录法
又称记忆化搜索,动态规划算法中的一种具体实现
其中备忘录方法的控制结构和直接递归方法的控制结构相同
和分治法的区别就是:我们拥有一个备忘录查询表,在计算前可进行查询,避免重复计算,浪费计算机算力
注:动态规划法又叫填表法,是先解除子问题;而备忘录法又叫查表发是从上到下解除问题,