全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验五 应用贪心算法求解背包问题学院: 计算机科学与技术 专业:计算机科学与技术学号: 班级: 姓名: 一、实验内容:背包问题指的是:有一个承重为W的背包和n个物品,它们各自的重量和价值分别是和(),假设,求这些物品中最有价值的一个子集。如果每次选择某一个物品的时候,只能全部拿走,则这一问题称为离散(0-1)背包问题;如果每次可以拿走某一物品的任意一部分,则这一问题称为连续背包问题。二、算法思想:首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全部装入背包后,背包内的物品总重量未超过C,则选择单位重量价值次高的物品并尽可能多地装入背包。依此策略一直地进行下去,直到背包装满为止。三、实验过程:#include using namespace std;struct goodinfofloat p; /物品效益 float w; /物品重量 float X; /物品该放的数量 int flag; /物品编号;/物品信息结构体void Insertionsort(goodinfo goods,int n)/插入排序,按pi/wi价值收益进行排序,一般教材上按冒泡排序int j,i; for(j=2;jgoodsi.p) goodsi+1=goodsi; i-; goodsi+1=goods0; /按物品效益,重量比值做升序排列void bag(goodinfo goods,float M,int n) float cu; int i,j; for(i=1;i=n;i+) goodsi.X=0; cu=M; /背包剩余容量 for(i=1;in;i+) if(goodsi.wcu)/若不超过容量,尽量增加物品 goodsi.X=1; cu-=goodsi.w;/确定背包新的剩余容量else goodsi.X=0; for(j=2;j=n;j+) /*按物品编号做降序排列*/ goods0=goodsj; i=j-1; while (goods0.flaggoodsi.flag) goodsi+1=goodsi; i-; goodsi+1=goods0; cout最优解为:endl; for(i=1;i=n;i+) cout第i件物品要放:; coutgoodsi.Xendl; void main() cout|-运用贪心法解背包问题-|endl; int j,n; float M; goodinfo *goods;/定义一个指针 while(j) coutn; goods=new struct goodinfo n+1;/ coutM; coutendl; int i; for(i=1;i=n;i+) goodsi.flag=i; cout请输入第igoodsi.w; cout请输入第igoodsi.p;goodsi.p=goodsi.p/goodsi.w;/得出物品的效益,重量比 coutendl; Insertionsort(goods,n); bag(goods,M,n); coutpress to run agianendl; coutpress to exitj;四、实验结果:对于0-1背包问题,贪心选择之所以不能得到最优解是因为在这种情况下,它无法保证最终能将背包装满,部分闲置的背
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 13609-2025天然气气体取样
- 2025年安全员B证考试试卷附答案详解(轻巧夺冠)
- 安全教育第一课课件图片
- 施工方入场安全培训课件
- 建筑电工焊工试题及答案
- 执业中药师考试冲刺密卷试题及答案
- 执业药师《药事管理与法规》真题及答案解析
- 执业药师资格考试药剂学历年真题试题及答案解析
- 接触网考试题及答案
- 教师招聘试题及答案
- 2025广东东莞市樟木头镇招聘编外聘用人员14人笔试考试参考题库及答案解析
- 2025湖北随州北星汇能产业发展有限公司招聘延期笔试考试参考题库及答案解析
- 2025年及未来5年中国猴头菇深加工行业市场调研分析及投资前景预测报告
- 2025年某气调库建设项目可行性研究报告
- 辽宁省鞍山市海城市2025-2026学年七年级上学期道德与法治11月期中
- 施工管理人员年度培训考核试卷及答案
- 水处理加药系统调试详细实施方案
- 七年级语文现代文阅读理解全套题
- 建筑工地安全管理检查清单
- 购买仓库地皮合同范本
- 2025中国人工智能医疗行业发展现状分析报告
评论
0/150
提交评论