0-1背包问题java源代码实现

 时间:2024-10-12 17:55:54

1、问题描述:给定n种物品和一背包。物品i的重量是w[i],其价值为v[i],背包的容量为C。问应如何选择装入背包的物品,使得装入背包中物品的总价值最大?

2、分析:对于一种物品,要么装入背包,要么不装。所以对于一种物品的装入状态可以取0和1。设物品i的装入状态为xi,xi∈ (0,1),此问题称为0-1背包问题。

3、数倌栗受绽据:物品个数n=5,物品重量w[5]={2,2,6,5,4},物品价值v[5]={6,3,5,4,6},总重量c=10。背包的最大容量为10,那么在设置数组m大小时,可以设行列值为5和10,那么,对于m(i,j)就表示可选物品为i到n且背包容量为j(总重量)时背包中所放物品的最大价值。看下面这个表格即为动态规划法解0-1背包问题的过程:

4、主要功能程序:

0-1背包问题java源代码实现0-1背包问题java源代码实现

5、测试程序

0-1背包问题java源代码实现

6、运行结果:

0-1背包问题java源代码实现
  • js如何实现网页一秒后显示图片
  • html利用del标签设置文本已被删除
  • MySQL5.6.13安装详细教程
  • MyEclipse新建Web项目
  • css3如何设置形状渐变,比如圆形和椭圆形
  • 热门搜索
    糖水做法 西瓜皮的做法 蛋糕怎么做 周星驰为什么不结婚 容积率怎么算 怎么看电脑显卡 为什么会长痔疮 花儿为什么那么红 新鲜百合怎么做好吃 三国杀怎么玩