首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连续背包Vs。0-1个背包

连续背包Vs。0-1个背包
EN

Stack Overflow用户
提问于 2016-03-13 14:13:01
回答 2查看 1.3K关注 0票数 2

为什么贪心方法适用于连续背包问题,而不适用于0-1背包问题?

EN

回答 2

Stack Overflow用户

发布于 2016-03-13 20:43:41

对于连续背包,您不能在最佳解决方案中使用单位成本c的项目q > 0,而将另一个项目的q' > 0留在成本c' > c中。否则,您只需将第一个项目的min(q, q')金额替换为第二个项目的相同数量,从而按min(q,q')*(c' - c)增加总成本。

对于0-1背包,其中是一个朴素贪婪算法的反例。考虑具有weight 6, 5, 4和cost 8, 5, 4的项目。假设总的允许权重为9。显然,最佳解决方案是将第二和第三项作为9的总成本,但第一项无论是绝对值还是相对于其权重都更有价值,因此应使用“贪婪”算法进行选择。

票数 2
EN

Stack Overflow用户

发布于 2016-03-13 15:03:01

在0-1背包中,贪婪方法不起作用,因为它确实希望你权衡所有可能的组合,因为在分数背包中,我们可以使用贪婪算法来获得最大利润,而空白空间降低了负载的每磅(重量)的有效利润。在0-1背包中,当我们考虑是否在背包中包含一个项目时,我们必须比较包含该项目的子问题的解与排除该项目的子问题的解,然后才能做出选择。

因此,解决方案运行O(nW),其中n是物品的数量,W是可以放入背包中的物品的权重

希望它能澄清!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35967159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档