动态规划

动态规划

动态规划本质上是利用问题的可划分性以及子问题之间的相似性来优化暴搜。
动态规划算法把原问题看成若干个重叠子问题的逐层递进,每个子问题的求解过程都是一个阶段。


动态规划的性质

无后效性

已经求解的子问题不受后续阶段的影响。

每个当前状态会且仅会决策出下一状态,而不直接对未来的所有状态负责。

最优子结构性

下一阶段的最优解应该能够由前面各阶段子问题的最优解导出。

本质上是当前状态代表的是所有可以到达该状态的集合,只是保留了与下一状态解集相关的信息。

在思考动态规划的时候也可以从集合的角度去思考。

子问题重叠性

代表信息具有可重复的求解过程。


三要素

状态

阶段

决策


类别

线性dp

背包

区间dp

树形dp

环形与后效性处理

状态压缩dp

数位统计dp

posted @ 2021-09-24 20:57  RapunzelOnly  阅读(110)  评论(0)    收藏  举报