dp的划分

依据:1.不重 2.不漏
不过并不是这两个条件每一次都需要满足
在求数量的时候1一定要满足,再求min和max的时候1可以不满足
但是不漏一定要遵守

一般的dp划分依据:
1.按照最后一步来划分

dp的计算顺序问题:
(按照拓扑序)

dp状态一般怎么表示:
如果是网格图就是f[i,j]
线性图就是f[i]
如果是背包问题的话,就是第一维是物品,第二维是体积

背包问题的循环顺序不能随便变,但是一般的只要符合拓扑序就行
本质上来说dp是图论的一小部分
百分之九十的dp都能转化成最短路
当我们的图,是拓扑图的时候,可以把最短路问题转化成dp问题
当我们的dp设置完之后,发现它的状态不是拓扑图了,我们可以用最短路解决

状态表示:每一个都代表一个集合,它必须是有意义的,而且每一个都能推出来我们的答案
状态计算:找到一种方式能够算出来每个集合的值

对于lis,除了贪心之外,还有一些数据结构可以优化成nlogn,比如(离散化)线段树,平衡树,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值