0-1背包问题 与 部分背包

【0-1背包】 问题描述:n件物品,第i件物品价值 vi 元,重wi 磅。希望用 W磅的书包 拿走最重的物品。(物品不可以分割故称为0-1背包)

【部分背包】问题描述:n件物品,第i件物品价值 vi 元,重wi 磅。希望用 W磅的背包 拿走最重的物品。第i件物品可以都拿走,也可以拿走一部分。(物品可以分割所以称为部分背包)

注意:0-1背包不能用贪心算法求解。

原因:按照贪心算法,每一次拿的都是每磅最贵的物品。由于物品大小不同,有可能每磅最贵的不是最合适大小的。最坏的情况可能导致,背包没有装满,而且当前装的也不是最优的。

例如:10磅 A 价值60¥ ; 20磅 B 价值100¥;30磅 C 价值120¥; 背包重50磅

按照贪心算法 ,应该选择 A B (160¥) 但是最优的应该是 BC(220¥)

分析:没有装满的背包降低了平均每磅物品的价值,将物品装入时必须考虑1)装入物品i后子问题的解与2)不装入物品i后子问题的解哪个最优。这样导致了许多子问题重叠,而这又恰巧是动态规划特点。

部分背包,显而易见可以用贪心算法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值