0-1背包问题 完全背包问题 附动态规划过程图和代码

【题目】
链接:https://www.nowcoder.com/questionTerminal/15bdb1bacb1843f381102ee609577385
来源:牛客网

考虑一个有n=5个物品的背包问题实例,背包的容量m=10,v(价值)=(6,3,5,4,6),并且w(重量)=(2,2,6,5,4),请问不超过sw(背包能承受的总重)的情况下,最大的放入价值是多少()
【0-1背包问题】就是物品只能放一次,要么放要么不放。
【完全背包问题】物品可以无限放
【多重背包问题】有n1个物品a1,n2个物品a2,放进背包里,可以转成0-1背包问题,相当于有重复的a1,a2
【求解】
都用动态规划做,0-1背包问题和完全背包问题解法是一样的,就是填表的时候值不一样。
新建一个二维表dp,行数是n的值,列数是sw + 1。
dp[i][j]表示前i种物品,背包能承受的重量是j的时候,放入物品的最大价值。
dp[n-1][sw]就是5个物品,背包总重不超过sw,最大放入的价值,就是所求的解。

这里的用例参考了这篇文章http://www.cnblogs.com/fengziwei/p/7750849.html
自己画图填表格 <

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值