动态规划的理解

https://juejin.cn/post/6895073364759543816

动态规划的定义:
将原问题拆解成若干子问题,同时保存子问题的答案,使得每个子问题只求解一次,最终获得原问题的答案

动态规划算法的基本思想与分治法类似,也是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后一子问题的求解提供了有用的信息。在求解任一子问题时,列出各种可能的局部解,通过决策保留那些有可能达到最优的局部解,丢弃其他局部解。依次解决各子问题,最后一个子问题就是初始问题的解

那么我们什么时候可以用到动态规划呢

根据定义我们可以得出:当一个大的问题可以拆分成多个结构相同的子问题,且子问题的解可以被多次使用,这时我们就可以用DP来解决

动态规划的一般解题思路:

最优子结构:首先需要定义子结构,也就是拆分成的子问题结构
边界:然后我们需要找到问题的边界,相当于递归的出点
状态转移公式:最后把子问题通过转移方程递推得到最终答案

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值