编程语言
首页 > 编程语言> > Java实现01背包问题的简单思路

Java实现01背包问题的简单思路

作者:互联网

0-1背包问题:

        给定N件物品和一个容量为V的背包。放入第i件物品耗费的空间为weight[i] ,得到的价值是 value[i] 。

        问:哪些物品装入背包可使价值总和最大?最大是多少?

解题思路:

假设背包容量为8,有五间物品分别如下:

物品重量价值
16公斤48元
21公斤7元
35公斤40元
42公斤12元
51公斤8元

面对每个物品,我们只有选择拿与不拿两种选择,不能够选择装入物品的一部分,也不能装入同一物品多次。

重量价值12345678
64800000484848
1777777485555
540777740485555
212712191940485560
18815202740485663

用简单的一维数组来写,方便大家理解

看代码吧!!!

 

 

 

 

标签:公斤,01,Java,装入,件物品,背包,物品,价值
来源: https://blog.csdn.net/hdushsh/article/details/122592417