背包问题完整程序,vs2008编写,用了两种方法解决问题~~有详细注释
2021-12-10 20:31:28 1015KB 算法设计与分析 背包 c++程序
1
   问题可以描述为:给定一组共 n 个物品,每种物品都有自己的重量 wi, i=1~n 和价值 vi, i=1~n,在限定的总重量(背包的容量 C)内,如何选择才能使得选择物品的总价值之和最高。选择最优的物品子集放置于给定背包中,最优子集对应 n 元解向量(x1,…xn),    为方便调试,采用文件输入,标准输出(或文件输出也可)的形式。数据输入的格式如下:每组测试数据    包含 n+1 行,第 1 行为 C 和 n,表示背包容量为 C 且有 n 个物品,接下来 n 行为这 n 个物品的重量 wi 和价值vi。背包容量和物品重量都为整数。n, C , wi, vi 范围如上所述。 输出两行。第一行为所选物品的最大价值之和,第二行后为装入背包的物品所对应的 n 元最优解向量(x1,…xn), xi∈{0 或1},每行以"i xi"形式输出。
2021-12-09 10:48:12 1.42MB 算法分析 0-1背包 贪心算法 递归求解
1
变邻域搜索求解0-1背包问题(C++代码),很好的学习资源,适合用来学习启发式算法
2021-12-08 22:33:46 5KB 变邻域搜索 背包问题
1
实验目的:0/1背包问题的回溯算法设计 实验原理:回溯算法设计。 实验要求:基本掌握回溯算法设计的原理方法。熟练掌握VC++中编程实现算法的常用技术和方法。 算法思想:  0-1背包问题:给定n种物品和一背包.物品i的重量是wi, 其价值为ui,背包的容量为C. 问如何选择装入背包的物品,使得装入背包中物品的总价值最大? 分析: 0-1背包是子集合选取问题,一般情况下0-1背包是个NP问题. 第一步 确定解空间:装入哪几种物品 第二步 确定易于搜索的解空间结构: 可以用数组p,w分别表示各个物品价值和重量。 用数组x记录,是否选种物品 第三步 以深度优先的方式搜索解空间,并在搜索的过程中剪枝
2021-12-08 19:20:11 63KB 算法设计与实现 01背包 回溯法
1
01背包问题,四种方法(动态规划、贪心、回溯、分支限界)
2021-12-08 16:11:30 242KB 01背包问题
1
这是一个实验报告,里面讲述利用matlab语言编写的基于pso算法的背包问题。里面有详细的描述解释性文件,有matlab源代码,直接可以运行的,附加实验结果分析,是了解pso的背包问题的好资料。
2021-12-08 15:26:59 80KB 背包问题 pso 源码 matlab
1
一篇关于动态规划的背包问题.主要讲解了如何利用动态规划思想来解决问题.
2021-12-07 18:52:22 134KB 动态规划 背包问题
1
其中包含了常见的回溯算法,如0-1背包问题的回溯算法、符号三角形和跳马问题。
2021-12-07 17:07:19 224KB 跳马 符号三角形 0-1背包 算法
1
、用自底向上的动态规划算法解决背包问题。测试数据如下:物品(1,2,3,4,5),重量(3,2,1,4,5),价值(25,20,15,40,50)。承重量W=6。求解最佳子集。
2021-12-06 20:37:54 811B 0-1背包 动态规划
1
0-1背包表示每个物品只有取和不取的状态,即只能取0个或1个。 用子问题定义状态:即f[i][j]表示前i间物品恰放入一个容器为j的背包可以获得的最大价值。状态转移方程为: f[i][j] = max{f[i-1][j], f[i-1][j-weight[i]]+value[i]}
2021-12-06 19:23:01 1KB 算法
1