版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辉彩园林绿化工程有限公司网站中期课程设计报告PAGE4PAGE7算法设计与分析实验报告//author:KevinBlack//这个是我刚刚做好的作业,我觉得应该上传一些文档到豆丁//老师···假如你看到我的作业跟网上的这个文章一样···你别以为我是抄的啊···//记得看看作者的名字啊!!贪心算法之最优装载问题一.实验目的掌握贪心算法的基本思想(具体阐述)掌握贪心算法的基本要素:贪心选择性质和最优子结构性质二.实验内容贪心算法基本思想:整体划分成部分,分而治之。每个部分中寻找最优解,然后综合所有部分最优解。这是,可能得到整体的最优解,但往往得到的是近似的最优解。贪心算法基本要素:1.贪心选择性质所谓贪心选择性质是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。这是贪心算法可行的第一个基本要素,也是贪心算法与动态规划算法的主要区别。2.最优子结构性质当一个问题的最优解包含其子问题的最优解时,称此问题具有最优子结构性质。最优装载问题1.问题描述:有一批集装箱要装上一艘载重量为c的轮船。其中集装箱i的重量为Wi。最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。2.数学描述:三.实验程序及运行结果#include<iostream.h>#include<stdlib.h>voidSwap(int&x,int&y)//交换{ intt; t=x; x=y; y=t;}voidsort(intw[],intt[],intn)//排序,由小到大{ for(intm=0;m<n;m++)//为每个物品编序号 { t[m]=m; } inti,j; intlastExchangeIndex; i=n-1; while(i>0) { lastExchangeIndex=0; for(j=0;j<i;j++) { if(w[j+1]<w[j]) { Swap(w[j+1],w[j]);//物品重量交换 lastExchangeIndex=j; Swap(t[j],t[j+1]);//物品序号交换 } } i=lastExchangeIndex;//当不存在交换的时候,lastExchangeIndex=0,循环结束 }}voidLoading(intx[],intw[],intc,intn,int*t)//传址{ sort(w,t,n); for(inti=0;i<n;i++)x[i]=0; for(intj=0;j<n&&w[t[j]]<=c;j++) { x[t[j]]=1;//装入 c-=w[t[j]]; }}intmain(){ intn,c; cout<<"请输入物品个数:"<<endl; cin>>n; cout<<"请输入最大容量:"<<endl; cin>>c; int*t=newint[n];//存储物品编号 int*w=newint[n];//存储每个物品重量 for(inti=0;i<n;i++) { cout<<"请输入第"<<i<<"个物品重量:"<<endl; cin>>w[i]; } int*x=newint[n];//物品是否装入 for(intj=0;j<n;j++)//初始化所有物品均为不装入 { x[j]=0; } Loading(x,w,c,n,t); cout<<"装入物品编号为:"<<endl; for(intk=0;k<n;k++) { if(x[k]==1) cout<<t[k]+1<<""; } //释放数组资源空间 delete[]t; delete[]w; delete[]x; return0;}四.实验分析证明:1.最优装在问题具有贪心选择性质:分析:当载重量为定值c时,Wi越小时,可装载的集装箱数量n越大。问题划分为i个子问题,只要依次选择最小重量集装箱,满足小于等于c。原问题即可由i个子问题的最优解得到整体的最优解。所以,最优装在问题具有贪心选择性质。y=max(x1w1+x2w2+…+xiwi+…+xnwn)具体的做法:首先排序整个集装箱(依照重量从小到大的顺序),然后尽可能多地选出前i个集装箱,要求y=(x1w1+x2w2+…+xiwi)<=c.输出所选集装箱编号。任务完成。2.最优装载问题具有最优子结构性质:分析:由2中的分析可以看出,一个问题的最优解包含其子问题的最优解,所以,最优装载问题具有最优子结构性质。3.由于最优装载问题的贪心选择性质和最优子结构性质,最优装载问题符合贪心算法。参考文献[1]/sfzx/jpsykc/xlcad/xu04.html#(18)内容总结
(1)//author:KevinBlack
//这个是我刚刚做好的作业,我觉得应该上传一些文档到豆丁
//老师···假如你看到我的作业跟网上的这个文章一样···你别以为我是抄的啊···
//记得看看作者的名字啊
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 甲状腺病科专科疾病护理|临床查房专用教学资料
- 《老年哮喘急性发作专科护理|雾化管理 + 全套护理措施》
- 《老年低血糖急救专科护理|血糖管理 + 全套护理措施》
- 跨境基础及电商1Chapter 1- Product Information Inquiry
- 税务申报流程与注意事项手册
- 湖南省长沙市检测2025-2026学年数学四年级第二学期期中监测试题(含答案)
- 职场人士提升跨文化沟通能力指导书
- 无人机航拍技术完全掌握指南
- 湖南省长沙市岳麓区2025届数学三年级下学期期中调研模拟试题(含答案解析)
- 绿色能源利用与节能减排策略实施方案
- Transformer架构详解:理解大模型的基石
- 情绪传播机制-洞察与解读
- 2026广东佛山市顺德区村(社区)大学生CEO选聘100人备考题库及1套参考答案详解
- 2026年全国保密教育线上培训考试试题及参考答案(完整版)
- YDT 5102-2024 通信线路工程技术规范
- 糖尿病酮症酸中毒的护理应急预案及处理流程
- 前处理方式对新冠病毒痰液及粪便样本核酸检测的影响分析
- 华为软件开发行为规范方案
- 铸造工艺及工装设计
- GB/T 12642-2013工业机器人性能规范及其试验方法
- PVC-U管安装施工工艺及施工方法
评论
0/150
提交评论