DP中背包问题总结

1.01背包:有n种物品与承重为m的背包。每种物品只有一件,每个物品都有对应的重量weight[i]与价值value[i],求解如何装包使得价值最大。

//基本问题:二维vec->滚动vec->一维vec

http://note.youdao.com/noteshare?id=78da8bf79c3cc25bc8ca66a9c30a98eb&sub=777D7C1D1D1E43B6B6ED212B8F0D7168

 

2.完全背包:有n种物品与承重为m的背包。每种物品有无限多件,每个物品都有对应的重量weight[i]与价值value[i],求解如何装包使得价值最大。

//直接v循环从逆序变为正序即解决

http://note.youdao.com/noteshare?id=4cb7a813028dcae5fc3f7b3cbc544619&sub=3E63208980F14CD8B38C06F1FBA41845

 

3.多重背包:有n种物品与承重为m的背包。每种物品有有限件num[i],每个物品都有对应的重量weight[i]与价值value[i],求解如何装包使得价值最大。

//本质仍然01背包,多加一步vec的转化即可

http://note.youdao.com/noteshare?id=651b25ee2104c37b9966c8ccaf4c2005&sub=420632CDDAEF407A87F36F2C74E3722F

 

 参考:

 

https://blog.csdn.net/tinyguyyy/article/details/51203935

https://blog.csdn.net/txl199106/article/details/45869557

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值