资源简介
01背包问题解决方法不少,动态规划是其中之一,动态规划的问题解题思路都差不多(一些浅见),基本要素是最优子结构性质,子问题重叠性质,自底向上的求解方法。只要了解了基本要素,那么这种题型也会更好理解。本题有不少注释,便于读者阅读。">01背包问题解决方法不少,动态规划是其中之一,动态规划的问题解题思路都差不多(一些浅见),基本要素是最优子结构性质,子问题重叠性质,自底向上的求解方法。只要了解了基本要素,那么这种题型也会更好理解。本题? [更多]
代码片段和文件信息
#include
#include
int C[200][200];//前i个物品装入容量为j的背包中获得的最大价值
int max(int aint b) //返回较大值
{
if(a >= b)
return a;
else return b;
}
int KnapSack(int nint w[]int v[]int x[]int W) //物体个数n 物品重量w[]物品价值v[],物品选择状态x[]背包容量W
{
int ij;
//接下来四行是初始左上角为0
for(i = 0; i <= n; i++)
C[i][0] = 0;
for(j = 0; j <= W; j++)
C[0][j] = 0;
for(i = 0; i <= n - 1; i++) //选择货物
{
for(j = 0; j <= W; j++) //选择容量
{
if(j < w[i])
C[i][j] = C[i - 1][j];
else
C[i][j] = max(C[i - 1][j] C[i - 1][j - w[i]] + v[i]);
}
}
j = W; //令j初始为容量
for(i = n - 1; i >= 0; i--) //找回最优解过程
{
if(C[i][j] > C[i - 1][j]) //比
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 79506 2013-11-05 16:47 KnapSack\bin\Debug\KnapSack.exe
文件 1059 2013-11-05 16:10 KnapSack\KnapSack.cbp
文件 242 2013-11-05 16:47 KnapSack\KnapSack.layout
文件 2182 2013-11-05 16:47 KnapSack\main.cpp
文件 4789 2013-11-05 16:47 KnapSack\obj\Debug\main.o
目录 0 2013-11-05 16:48 KnapSack\bin\Debug
目录 0 2013-11-05 16:48 KnapSack\obj\Debug
目录 0 2013-11-05 16:48 KnapSack\bin
目录 0 2013-11-05 16:48 KnapSack\obj
目录 0 2013-11-05 16:48 KnapSack
----------- --------- ---------- ----- ----
87778 10
相关资源
- C/C++实验系统
- C/C++高质量编程
- VC6写的Socket API封装类非MFC
- 最大长方体问题--动态规划C++
- 西工大C/C++大作业
- 稳定匹配算法源代码C/C++
- C/C++中多维数组指针作为函数参数传递
- 用C/C++写的求关键路径AOE
- MP3解析,可获取歌曲信息和歌曲播放
- 算法导论第三版各种数据结构的c/c+
- 标准C/C++读写配置文件类,读写ini文件
- cache仿真程序.cpp
- 网络嗅探器的设计与实现
- C/C++ 进程无模块内存注入[x86/x64]
- 用动态规划法求解流水线调度问题
- 图像处理 高斯平滑 C/C++语言实现
- 动态规划灰度压缩bmp
- KCF源码的输入图片序列的图片名称i
- 布尔表达式转换为四元式
- c/c++程序自动批改
- 几种简单的滤镜实现交叉,怀旧,光
- QtC++用动态规划,djistra,Astar,Qlear
- C/C++利用Win32框架写了个小游戏分享
- 资源分配c++代码
- 基于C/C++的电子日历系统源代码
- 用C语言实现MD4加密
- mq4cpp_v1.16.zip 一个基于C/C++的消息中间
- 使用串口通讯发送和接收文件的VC++源
- matlab与c/c++混合编程中VARIANT与c++数据
- C语言.xmind
评论
共有 条评论