动态规划入门(一) DP 基本思想

xiaoxiao2021-02-27  243

 动态规划( DP ),是一种重要的算法设计思想,是算法设计的一柄利器。但是,要掌握DP并且运用自如,绝对不是什么容易的事。 

 DP的基本思想:

1.    把一个大问题的解转化为若干个小问题的解。

2.    如果得到了这些小问题的解,然后再经过一定的处理,就可以得到原问题的解。

3.    这些小问题与原问题有着结构相同,即小问题还可以继续分解。

4    这样一直分下去,问题的规模就会不断减小,直到小的不能再小,最终会得到原子问题。

5.    原子问题的解显而易见,这样递推回去,就可以得到原问题的解 

 DP的具体实现:

1.   分析问题,得体状态转换方程

2.   根据状态转换方程,从原子问题开始,不断向上求解,直到得到原问题的解。

3.    这个过程,一般是一个填表的过程。 

      哎,好抽象呀!木有办法,如果抛开具体问题,只讲原理,效果就是这样的坑爹。下面都是一些经典的题目,还是结合这些具体问题,一点一点慢慢体会吧。

POJ 1088 滑雪

POJ 1163 The Triangle

POJ 1050 To the Max

 

POJ 1159 Palindrome

POJ 1458 Common Subsequence

POJ 1141 Brackets Sequence

 

POJ 1160 Post Office

POJ 1037 A decorative fence

转载请注明原文地址: https://www.6miu.com/read-6071.html

最新回复(0)