1. 首页
  2. 编程语言
  3. C
  4. 背包问题(C语言)

背包问题(C语言)

上传者: 2019-09-07 07:50:47上传 RAR文件 3.86KB 热度 38次
1、设n件物品的重量分别为w0,w1,w2,...wn-1,物品的价值分别为v0,v1,v2,...vn-1。采用递归寻找物品的选择方案。2、设前面已有了多种选择的方案,并保留了其中总价值最大的方案于数组option[]中,该方案的总价值存入变量maxv。3、当前正在考察新方案,其物品选择情况保存于数组cop[]中。假定当前方案已考虑了前i-1件物品,现在要考虑第i件物品;当前方案已包含的物品重量之和为tw;至此,若其余物品都选择是可能的话,本方案能达到的总价值的期望值设为tv。4、引入tv,一旦当前方案总价值的期望值小于前面方案的总价值maxv时,应终止当前方案,立即去考察下一个方案。
用户评论