贪心算法 0-1背包c语言,贪心算法0-1背包问题(算法实验代码).pdf
.
实验三、 0-1 背包问题(贪心算法)
实验代码:
#include
int max(int a,int b)
{
if(a>b)
return a;
else
return b;
}
void Knapsack(int *v,int *w,int *x,int c,int n, int m[8][100])
{
int i,j;
for(j=0;j
{
if(j
m[n][j]=0;
else
m[n][j]=v[n];
}
for(i=n-1;i>=1;i--)
{
for(j=w[i];j<=c;j++)
m[i][j]=max(m[i+1][j],m[i+1][j-w[i]]+v[i]); }
for(i=1;i
{
if(m[i][c]==m[i+1][c])
x[i]=0;
else
{x[i]=1; c=c-w[i];}
}
x[n]=(m[n][c])?1:0;
return;
}
int main()
{
int i=0;
int n=7;
int w[]={0,2,3,5,7,1,4,1};
int v[]={0,10,5,15,7,6,18,3};
int x[]={0,0,0,0,0,0,0,0};
.'
.
printf(" 物品总数为: 7\n");
printf(" 物品重量和价值分别为: \n");
printf("\n 重量 价值 \n");
for (i=1;i<=n;i++)
printf("%d %d \n",w[i],v[i]);
int m=15;
int array[8][100]={0};
Knapsack(v,w,x,m,7,array);
printf(" 背包能装的最大价值为 : %d\n",array[1][m]);
printf(" 贪心算法的解为 : ");
for(i=1;i<=n;i++)
{
if(i==1)
printf("%d",x[i]);
else
printf(" %d",x[i]);
}
printf("\n");
return 0;
}
测试截图为:
.'
贪心算法 0-1背包c语言,贪心算法0-1背包问题(算法实验代码).pdf相关推荐
- 用c语言编程牛顿环实验,C语言下迈克耳孙干涉仪测量空气折射率的实验探究.pdf...
C语言下迈克耳孙干涉仪测量空气折射率的实验探究.pdf 语言下迈克耳孙干涉仪测量空气折射率的实验探究 张之韬 李雪梅 ( 浙江海洋大学数理与信息学院 浙江 舟山 ) ( 收稿日期 ) 摘 要 通过压强 ...
- 贪心算法黑白点匹配C语言,贪心算法之——黑白点的匹配(两种实现方法)
一.题目 设平面上分布着n个白点和n个黑点,每个点用一对坐标(x, y)表示.一个黑点b=(xb,yb)支配一个白点w=(xw, yw)当且仅当xb>=xw和yb>=yw. 若黑点b支配白 ...
- 哈工大 c语言测试与系统控制 ad,哈工大——c语言在测量与控制中应用实验报告.pdf...
哈工大--c语言在测量与控制中应用实验报告 Harbin Institute of Technology Harbin Institute of Technology C 语言在测量与控制中的 C 语 ...
- 王红梅《算法设计与分析(第3版)》部分课后实验代码
[教材信息] 书名:算法设计与分析(第3版) ISBN:9787302594390 作者:王红梅 [递推法:杨辉三角形] #include <bits/stdc++.h> using na ...
- 贪心算法无重叠区间c语言,贪心算法之区间问题.md
--- title: 贪心算法之区间问题 tags: - Leetcode categories: - Leetcode author: 四叶草 top: false abbrlink: 26230 ...
- 分支界限法0 1背包 c语言,分支限界法之布线问题(1)
一.要求: 1.输入电路板区域n*m以及布线的起始位置和结束位置: 2.输出布线方案: 3.可以使用c或者vc实现 二.问题分析及实验原理: 在n*m的方格阵列中存在封锁区域(布线时必须绕开的区域), ...
- c语言 vc++6.0 插入图片,C语言VC++6.0环境中如何插入图片
getimage / putimage / loadimage / saveimage 这一组命令和 IMAGE 对象可以实现图像处理的相关功能,下面逐个介绍. (有点类似 tc 中的 imagesi ...
- TDT2 多语言本文 4.0 版 TDT3 多语言本文 2.0 版
http://tc2sc.mojolingo.xuite.net/m2m-0000/projects.ldc.upenn.edu/TIDES/index.html 转载于:https://www.cn ...
- 01背包python解法_0-1背包问题及Python代码实现
1.简介 假设我们有n件物品,分别编号为1, 2...n.其中编号为i的物品价值为vi,它的重量为wi.为了简化问题,假定价值和重量都是整数值.现在,假设我们有一个背包,它能够承载的重量是W.现在,我 ...
最新文章
- SD卡的控制方法(指令集和控制时序)
- Python 技术点
- 【需求】手机无线投屏到电视需求整理,Miracast无线投屏功能应用及需求
- html audio 本地无效源,音频文件无法播放?H5的audio标签在win7下运行时报错“无效源”?...
- ASP.NET开源框架之HIPPO技术内幕(四)--多语言的实现
- OpenCV立体声匹配 stereo matching将L和R图像转换为视差和点云的实例(附完整代码)
- FFmpeg 4.2“艾达”发布
- GPRS模块AT呼叫控制命令
- 写给90后快30岁的我们
- svn回退到具体的版本
- 物联网-移远M26模块OpenCPU开发第3讲(看门狗)
- python sns绘制回归线_【干货!】用Python演绎5种常见可视化视图
- debian安装及使用mysql
- Deepin 系统下安装VMware并激活
- 目标检测(一)--Objectness算法总体理解,整理及总结
- python中random.sample()函数
- WordPress二次元博客主题模板-Sakurairo v2.5.1.1
- 猿人时代java_猿人时代攻略
- 小马激活报错:已停止工作
- 今日头条前端面试总结