付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程名称:算法设计与分析 姓名实验序号:一、实验名称班级:学号实验日期 指导教师 实验成绩2013-10-28贪心算法实验-包装冋题二、实验目的及要求1、使用在线测评的算法题目评分系统来测试所写代码;2、通过直观的应用问题,加深对贪心算法的理解;三、实验环境任意C或C+编写调试工具,北京大学ICPC在线测评系统POJ四、实验内容1、登陆POJ系统,找到题号为1017的题目-包装;2、阅读题目,分析出求解该问题的思路;3、使用贪心算法,实现本题;4、进行简单测试,完成之后提交到POJ系统。五、算法描述及实验步骤贪心算法原理:贪心算法通过一系列的选择来达到子问题的解。它所做的每一步选择都是当 前状
2、态下局部最好选择,即贪心选择。这种启发式的策略虽不能总是奏效,但大 多数情况下确能达到预期目的,得到最优解。要使用贪心算法,问题必须具备两个基本要素。贪心选择性质和最优子结构 性质。贪心选择性质指所求问题的整体最优解可以通过一系列局部最优的选择, 即贪心选择来达到。通常采用自顶向下的方式进行,这样每做一次贪心选择就将 所求问题化为规模更小的子问题。当然,前提是所求问题本身的最优解包含其子 问题的最优解,即具有最优子结构性质。包装问题描述:有一个工厂生产一种长宽为 1*1、2*2、3*3、4*4、5*5、6*6的产品,这些 产品交付到客户手中都是用6*6的包裹包装。因为费用问题,工厂希望使用最少
3、 的包裹寄送给订购货物的客户。一个好的程序能够根据订单找到最少需要的包裹 数量。你被要求写这样一个程序。输入输入文件由若干行组成,每一行市一个订单,所有的订单都由6个整数组成, 分别对应1*1产品到6*6产品的需求量。输入文件的最后一行由 6个0组成。输出输出文件的每一行对应输入文件的每一行,它包含了最少需要的包裹数量。输入示例0 0 4 0 0 1 /4个3*3的产品和1个6*6的产品7 5 1 0 0 0 /7个1*1的产品、5个2*2的产品和1个3*3的产品0 0 0 0 0 0 /0 结束输出示例21/至少需要2个包裹/至少需要1个包裹实验步骤:1、建立包装问题的解题思路疋先本程序使用
4、贪心算法,也就是先给6*6的包装,在给5*5的包装, 如果有1*1的与5*5包装在一起,直到6*6的包裹空间用完,继续包装 4*4的,剩余的空间又可以包装2*2或者1*1的,3*3的一个包裹可以 装4个,如果没有4个可以装,再装2*2的或1*1的。最后在装2*2的, 1*1的。总的来说就是先让大的装,装了剩余的空间用可以装的产品再 装。2、构造算法框架 把65的分好把1*1分配在5*5里面把4的分好 把2*2的分在4*4的空间里面 把1的分在4*4的空间里 把6 5 43的分好 给2*2的分在3*3的空间如还有空间则把1分在3的空间3、分析出算法复杂度算法的复杂度为O(n log n)六、调试
5、过程及实验结果叫=C:wi ndoste m 3 ADebu g21.Ke0 9PressQ any6key to continue七、总结在动态规划算法中,每步所做的选择往往依赖于相关子问题的解。 因而只有 在解出相关子问题后,才能做出选择。而在贪心算法中,仅在当前状态下做出最 好的选择,即局部最优选择。八、附录#in clude#in clude#in cludevcstri ng int nu m4=0,5,3,1; int box7;int mai n()/freo pen (i np ut.txt,r,stdi n);while(1)int tmp=0;for(i nt i=1;ia2)an s+=(box2-a2+8)/9;int a仁a ns*36-box6*36-box5*25-box4*16-box3*9-box2*
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东佛山南海区丹灶镇仙湖幼儿园招聘备考题库附参考答案详解(能力提升)
- 2026天津市勘察设计院集团有限公司招聘4人备考题库附完整答案详解【各地真题】
- 2026甘肃兰州城关区《卫生职业教育》杂志社招聘备考题库带答案详解(夺分金卷)
- 2026甘肃平凉华亭市中医医院招聘9人备考题库含答案详解【研优卷】
- 2026广西北海市产业投资有限责任公司招聘4人备考题库附答案详解【满分必刷】
- 烧结原料工操作知识能力考核试卷含答案
- 2026广东广州市招聘中山医学院医科公共平台技术员1人备考题库含答案详解(满分必刷)
- 2026河北沧州任丘关爱精神病医院招聘备考题库及一套完整答案详解
- 掩膜版制造工岗前风险识别考核试卷含答案
- 2026中国人民财产保险股份有限公司那曲分公司嘉黎县营销服务部招聘1人备考题库及答案详解(历年真题)
- 2026年湖北生态工程职业技术学院单招综合素质考试题库带答案详解
- 《特大型突发地质灾害隐患点认定与核销管理办法(试行)》
- XX街道中学初中部2026年春季家长会中期筹备工作方案:筹备家长会搭建沟通平台
- 2025年时事政治必考试题库(附含答案)
- 2026年汽车制造机器人自动化率提升:趋势、技术与实践
- 作业条件危险性评价方法LEC及案例分析
- 初中英语中考短文填空题型考点精析与知识清单
- 城市公共交通运营与服务规范
- 2026年1月浙江省高考首考英语试卷真题完整版(含答案+听力)
- 2026年国轩高科行测笔试题库
- 2025年研究生政治复试笔试题库及答案
评论
0/150
提交评论