备忘录方法与动态规划比较

动态规划算法的基本要素: 
1  最优子结构性质
当问题的最优解包含了其子问题的最优解时,称该问题具有最优子结构性质。
2  重叠子问题性质   
动态规划算法对每个问题只解一次,将其解保存在一个表格中,当再次需要解此问题时,用常数时间查看一下结果。因此,用动态规划算法通常只需要多项式时间。

备忘录方法:
•用一个表格来保存已解决的子问题的答案,用的时候查表即可。 
•采用的递归方式是自顶向下。
•控制结构与直接递归相同,区别在于备忘录方式为每个解过的子问题建立备忘录。 
•初始化为每个子问题的记录存入一个特殊的值,表示并未求解。在求解过程中,查看相应记录如果是特殊值,表示未求解,否则只要取出该子问题的解答即可。

备忘录方法与动态规划和递归的区别:

1、动态规划是自低向上 ,备忘录方法是自顶向下,递归是自顶向下

2、动态规划每个子问题都要解一次,但不会求解重复子问题;备忘录方法只解哪些确实需要解的子问题;递归方法每个子问题都要解一次,包括重复子问题• 。

原文地址:https://www.cnblogs.com/codeskiller/p/6631053.html