dynamic programming 题目总结

1基本思想: 将待解决问题分解成若干个子问题,先求解子问题,然后从这些子问题的解中得到原问题的解

2条件:

1)拥有最优子结构 (optimal substructure)

2)有重叠子问题(overlapping subproblems)

3 (4点要素)一个老师的总结:

1)状态(state):例如 dp 问题中经常会用的 f [ i ] [ j ] 这种 用来表示跟 i 和 j 相关的一个子问题的解(即:用来存储子问题的结果)。

2)方程(function):来表示状态之间的联系。即: 如何通过子问题的解得到大问题的解。

3)初始化(initialization):初始化一些边界状态, 即:表示 最极限 子问题的解

4)答案(answer):最大的那个状态是什么


Leetcode 题目:

关于matrix 的dp 问题,这几道题可以放一起做

1 triangle

2 unique path

3 unique path II

4 minimum path sum

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值