0-1背包问题,如果背包有多个,求思路

ForEverFlying 2008-05-19 06:43:06
给定n个物品和m个背包。物品i的重量是Wi,其价值为Vi,每个背包的容量为C。应如何选择装入每个背包的物品,使得所有装入背包中物品的总价值最大?
...全文
1651 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoyi9340 2010-12-07
  • 打赏
  • 举报
回复
么中文版的吗~~~
tzcim 2010-11-23
  • 打赏
  • 举报
回复
额,只能说感谢前辈们了
ForEverFlying 2008-05-19
  • 打赏
  • 举报
回复
呵呵,谢谢你啊,你的回答是我今天进行了几个小时算法补课的原动力
可口可乐 2008-05-19
  • 打赏
  • 举报
回复
这么快就结贴了呀,呵呵
那本书完整的网页是
http://www.or.deis.unibo.it/knapsack.html
专门讨论背包问题
可口可乐 2008-05-19
  • 打赏
  • 举报
回复
如果n,m,C比较小的话,可以有如下动态规划解法
dp[mask][left][cur]表示选择某中哪些物品,剩下几个背包,当前的背包还剩多少空间,空间为2^n*m*C
有 dp[mask][left][cur] = max{dp[mask][left-1][C], Vi+dp[mask|(1<<i)][left][cur-Wi]}
i是可以放进当前包的某个物品
ForEverFlying 2008-05-19
  • 打赏
  • 举报
回复
牛人,不知您怎样找到这样生僻的论文的~或者我太才疏学浅啦……100分敬上
可口可乐 2008-05-19
  • 打赏
  • 举报
回复
这是一个NP问题,具体详细讨论参考
http://www.or.deis.unibo.it/kp/Chapter6.pdf

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧