【动态规划】矩阵链式乘法

动态规划与分治算法的联系:
(1) 动态规划和分治是非常像的,都是要把大问题分解成子问题,然后将子问题
的解进行合并起来求原问题的解。
(2) 动态规划一般会枚举所有的子问题,要把所有的子问题都解决一遍,但
是它避免了对同一个子问题的重复计算,那它是怎么避免重复的呢,这就是
programming。programming 的意思是说生成一张表,不断的向表中填数,当访问到表中单元时,如果表中有值则直接返回,没有则进行求解并将求到的值填在表中。
(3) 动态规划和贪心一样,都可以典型的求解最优化问题,但是动态规划又不仅
仅用于最优化问题的求解,例如p-value 的计算问题。
通常来说,只要我们发现一个问题当中能存在一种递归的性质,我们就可以把它
分解成子问题,就能找到一种递归的关系,这个时候就可以用动态规划进行求解。
《【动态规划】矩阵链式乘法》
《【动态规划】矩阵链式乘法》
我们直观的想法是可以将已经计算过的子问题保存在一张表里面。下次如果再求
解该子问题则直接将表中存放的值返回即可,这样便避免了重复计算。
因此我们有下面伪代码:

《【动态规划】矩阵链式乘法》

    原文作者:动态规划
    原文地址: https://blog.csdn.net/u014518506/article/details/79602211
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞