算法总结-动态规划

动态规划题目特点

这里写图片描述

动态规划思考方式
1 确定状态
  • 最后一步(最优策略中使用的最后一枚硬币aK)
  • 化成子问题(最少的硬币拼出更小的面值27-aK)
2 转移方程
  • f[X] = min{f[X-2]+1, f[X-5]+1, f[X-7]+1}
3 初始条件和边界情况
  • f[0] = 0, 如果不能拼出Y,f[Y]=正无穷
4 计算顺序
  • f[0], f[1], f[2], …
坐标型动态规划

这里写图片描述

序列型动态规划

这里写图片描述
这里写图片描述
- Paint House http://www.lintcode.com/en/problem/paint-house/
- Paint House II http://www.lintcode.com/problem/paint-house-ii/
- House Robber http://www.lintcode.com/problem/house-robber/
- House Robber II http://www.lintcode.com/problem/house-robber-ii/
- Best Time To Buy And Sell Stock I II III IIII
http://www.lintcode.com/problem/best-time-to-buy-and-sell-stock-iii/

划分型动态规划

这里写图片描述

完美平方
https://www.lintcode.com/zh-cn/problem/perfect-squares/

分割回文串2
https://www.lintcode.com/zh-cn/problem/palindrome-partitioning-ii/

抄书(可用二分解)
https://www.lintcode.com/zh-cn/problem/copy-books/

区间型动态规划

最长的回文序列
https://www.lintcode.com/zh-cn/problem/longest-palindromic-subsequence/

双序列型动态规划

最长公共子序列
https://www.lintcode.com/zh-cn/problem/longest-common-subsequence/

交叉字符串
https://www.lintcode.com/zh-cn/problem/interleaving-string/

编辑距离
https://www.lintcode.com/zh-cn/problem/edit-distance/

不同的子序列
https://www.lintcode.com/zh-cn/problem/distinct-subsequences/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值