- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机算法实验报告唐国峰
学号 《算法设计与分析》 实验报告四 学专指成 生业导 姓、班教 名级师绩 范振山09计算机一班 唐国峰 电子与信息工程系XX年4月6日 实验四:贪心算法运用练习 一、实验目的 本次实验是针对贪心算法的设计及应用练习,旨在加深学生对该部分知识点的理解,提高学生运用该部分知识解决问题的能力。 二、实验步骤与要求 1.实验前复习课程所学知识以及阅读和理解指定的课外阅读材料;2.学生独自完成实验指定内容; 3.实验结束后,用统一的实验报告模板编写实验报告。 4.提交说明: 电子版提交说明: a需要提交Wiar压缩包,文件名为“《算法设计与分析》实验四_学号_姓名”,如“《算法设计与分析》实验四__张三”。 b压缩包内为一个“《算法设计与分析》实验四_学号_姓名”命名的顶层文件夹, 其下为两个文件夹,一个文件夹命名为“源程序”,另一个文件夹命名为“实验报告电子版”。其下分别放置对应实验成果物。 打印版提交说明: a不可随意更改模板样式。 b字体:中文为宋体,大小为10号字,英文为TimeNewRoman,大小为10号 字。 c行间距:单倍行距。 提交截止时间:XX年4月20日16:00。 三、实验项目 请从下列题目列表中任选2道或3道题目,运用贪心算法对问题的进行求解。备选题目列表如下: 1.教材第106页所记述的0-1背包问题。2.教材课后习题4-9;3.教材课后习题4-21。 四、实验过程 题目一:给定n种物品和一个背包,物品i的重量是wi,其价值为vi,背包的容量为c。问如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 1.题目分析 给定c0;wi0;vo0,1≤i≤n,要求找出一个n元0-1向量,xi∈{0,1},1≤i≤n,使得∑wixi≤c,而且∑vixi达到最大。 2.算法构造 首先计算每种物品单位重量的价值;然后,依贪心算法策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全装入背包后,背包内的物品总重量为超过c,则选择单位质量价值次高的物品并尽可能多地装入背包。3.算法实现 //:定义控制台应用程序的入口点。// #include#includeusingnamespacestd; //使用冒泡排序对v[]/w[]单位价值的物品进行从大到小的排序voidSort(intn,flo(来自:写论文网:计算机算法实验报告唐国峰)atv[],floatw[]){} //贪心算法主要步骤 voidKnapsack(intn,floatM,floatv[],floatw[],floatx[]){ Sort(n,v,w);//对要放入的物品进行排序inti; for(i=0;ic)break;//质量大于容量的不予考虑x[i]=1; c-=w[i];//物品放入,剩余容量减少x[i]=0;floatt1,t2;for(inti=0;in; coutw[i];cinv[i];inti; for(i=0;i#includeusingnamespacestd;intmain(){ intn,k; boolisSolution=true;intm=0,count=0;ofstreaminfile();coutnk; infilea[i]; //枢轴元素t为数组最左侧的元素 //i往右移动j往左移动当指向同一位置时扫描完成 //如果右侧指针元素比轴测元素大,指针元素左移//确保i在j左边//当右侧指针元素比轴测元素小时,交换两指针指向数的位置//如果左侧指针元素比轴测元素小,指针元素右移//确保i在j左边//当左侧指针元素比轴测元素大时,交换两指针指向数的位置//对左边进行排序//对右边进行排序 intint//合并大小为s的相邻序列子数组intintint//合并c[l,m]和x[m+1,r]到y[l,r] //将a中的元素合并到数组b//将b中的元素合并到数组a//合并c[l,m]和x[m+1,r]到y[l,r]//合并大小为s的相邻序列子数组//处理剩下的元素少于2s//合并大小为s的相邻2字段数组//合并x[i,i+s-1]和x[i+s,i+2*s-1]到y[i,i+2*s-1] 学号 《算法设计与分析》 实验报告三 学专指成 生业导 姓、班教 名级师绩 范振山计算机一班唐国峰 电子与信息工程系XX年3月27日 实验三:动态规划算法运用练习 一、实验目的 本次实验是针对动态规划算法的设计及应用练习,旨在加深学生对该部分知识
您可能关注的文档
最近下载
- 留守儿童学前教育毕业论文.docx VIP
- 热处理炉温均匀性测试标准SAE AMS2750F Rev.F 2020 英文版+中文版.pdf VIP
- 输入11到20带圈字符.doc VIP
- 固体比热容的测量.doc VIP
- 翻车机值班员岗位职责共3篇翻车机操作工岗位职责.docx VIP
- 【新教材】人教版(2024)八年级上册英语Unit 6 Plan for Yourself教案(表格式).docx
- 植筋、界面处理检验批质量验收记录表.doc VIP
- 实用营养与保健知到课后答案智慧树章节测试答案2025年春浙江大学.docx VIP
- 泌尿系结石PPT课件PPT课件.ppt
- 标准图集-20S515-钢筋混凝土及砖砌排水检查井.pdf VIP
原创力文档


文档评论(0)