动态规划具备以下三个特点:
1.把原来的问题拆分成几个相似的子问题。
2.所有子问题都只需解决一次。
3.存储子问题的解
动态规划的本质是对问题状态定义和状态转移方程的定义(状态以及状态之间的递推关系)
动态规划问题一般从以下死哦角度考虑:
1.状态定义
2.状态间的转移方程定义
3.状态的初始化
4.返回结果
状态定义的要求:定义状态一定要形成递推关系
一句话概括:三特点四要素两本质
使用场景:最大值/最小值,可不可行,是不是,方案数等问题
下面附上动态规划代码的地址
https://github.com/dukaichao/Nov11_27/commit/5854e838fd35d72ca200e8ae5931dc3b6f4d8f24