动态规划思想篇

Posted JunMain

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态规划思想篇相关的知识,希望对你有一定的参考价值。

从集合的角度思考动态规划

1. 动态规划能够高效的解决问题原因

每一次划分的都是某一类集合问题
每次枚举一类集合,那么最后的效率会快很多

动态规划分为两个步骤

1.状态表示f[n]

状态表示是一个化0为整的一个过程,每次枚举一个集合, 根据一类集合划分成一个数f[n]

  1. 集合:根据题目所划分的一类集合(怎么划分还是要靠刷题经验)
  2. 属性:集合所想表示的属性通常是Max, Min, Count,是否存在

2.状态计算f[n]

状态计算通常是一种化整为0的过程。

我们说过了f[n]虽然只是一个数,但是它代表着一类集合,状态计算就是把f[n]这一类集合划分若干个小集合通过对每一个集合的运算最终便可以得出f[n]的值

那怎么划分呢?划分的依据是什么?

划分的依据:找最后一个不同点,通过对最后一个元素的操作来划分不同的集合

以上是关于动态规划思想篇的主要内容,如果未能解决你的问题,请参考以下文章

浅谈动态规划基础篇

算法思想篇(下) | 带你把 动态规划 吃的透透的

floyd算法 是动态规划的思想吗

动态规划(上)

动态规划-第一节1:动态规划基本思想框架

动态规划基本思想