版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TOC\o"1-5"\h\z\o"CurrentDocument"实验三贪心算法的应用 1\o"CurrentDocument"一、实验目的 J\o"CurrentDocument"二、实验内容 .1\o"CurrentDocument"三、实验步骤 .2实验三贪心算法的应用一、实验目的.掌握贪心算法的基本概念和两个基本要素.熟练掌握贪心算法解决问题的基本步骤。.学会利用贪心算法解决实际问题。二、实验内容1.问题描述:题目一:找钱问题一个顾客买了价值x元的商品(不考虑角、分),并将y元的钱交给售货员。售货员希望用张数最少的钱币找给顾客。要求:键盘输入x与y输出找钱总数,各种钱币的张数,若张数为0不必输出。输入输出实例:题目二:删数问题键盘输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数最小。输出应包括所去掉的数字的位置和组成的新的正整数(N不超过100位)。要求:键盘输入正整数N与删除位数s输出删除后的最小新数以及删除的位数输入输出实例:题目三:分数表示问题设计一个算法,把一个真分数表示为最少埃及分数之和的形式。所谓埃及分数是指分子为1的分数。如7/8=1/2+1/3+1/24。三、实验步骤.理解算法思想和问题要求;.编程实现题目要求;.上机输入和调试自己所编的程序;.验证分析实验结果;.整理出实验报告.实验目的.问题描述.算法设计包含:数据结构与核心算法的设计描述、函数调用及主函数设计、主要算法流程图等对于高精度数的运算,应该讲输入的高精度数存储为字符串格式,根据输出要求设置数组,在删除数字是记录其位置。在位数固定的前提下,让高位的数字尽量小,其值就较小,依据贪婪策略就可以解决这个问题。另外,删除字符使用后面的字符覆盖已删除的字符的
方法,但字符串长度会改变,可能会有比较多字符移动操作,算法效率不高。定义一个del函数负责删除字符,不断调用del函数以删除高位较大的数。.程序调试及运行结果分析运行程序,输入一个正整数23146,输入要删除3个数字,然后成功运行程序后,输出删除后的最小数为14,删除的位数分别为2,1,5。经过验证,最后得到的这个数确实为删除任意数的最小数。【印回II你要册【印回II你要册1掉几个薮学?23146I'C:\LIsers\Administrator\Desktop\Debu9删数问然exe则除后的数为:14耐除的位数为:215Pressanykeytocontinue.实验总结通过本次实验我认识到自己对知识掌握不够全面以及编程能力的不足。在使用循环语句进行相邻两个数比较,删除较大者时我一直没弄明白具体是怎样实现的。而且依据书上的算法编写程序运行后结果并不正确。后来在同学的帮助下才明白具体操作,改正了之前的错误。由此也可以看出逻辑思维能力和基础知识也有所欠缺。不过,经过前几次的实验,对于函数的相关操作我已经基本能够熟练的应用了。附录:程序清单(程序过长,可附主要部分)#include<iostream>#include<string>usingnamespacestd;voiddel(charn口,intb,intk)(inti;for(i=b;i<=strlen(n)-k;i++)n[i]=n[i+k];)voidmain()(charn[100];ints,i,j,j1,data[100],len;cout<<”请输入一个正整数:”;cin>>n;cout<<"你要删掉几个数字?"<<endl;cin>>s;len=strlen(n);if(s>len)(cout<<"数据错误!"<<endl;return;)j1=0;for(i=1;i<=s;i=i+1)(for(j=0;j<strlen(n);j=j+1)if(n[j]>n[j+1]) 〃贪婪选择(del(n,j,1);if(j>j1)data[i]=j+i;〃记录删除数字位置elsedata[i]=data[i-1]-1;〃实例2向前删除的情况j1=j;break;)if(j>strlen(n))break;)for(i=i;i<=s;i++)(j=len-i+1;del(n,j,1);data[i]=j;)while(n[1]=='0'&&strlen(n)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025劳动合同签订管理办法
- 2024年环保型农药研发及生产许可合同
- 2025餐饮的承包经营合同模板
- 2025司法考试案例分析合同约定工资“款到提成”是否有效
- 2024年02月福建2024兴业银行厦门分行校园招考笔试历年参考题库附带答案详解
- 药物作用靶点识别-洞察分析
- 稀有金属国际贸易合作-洞察分析
- 语言接触与社会变迁-洞察分析
- 眼科影像数据分析-洞察分析
- 亳州2024年安徽亳州利辛县面向我省退役运动员专项招聘体育教师笔试历年典型考点(频考版试卷)附带答案详解
- 一年级美术(上册)课件-《认识美术工具》教学课件
- GB∕T 32218-2015 真空技术 真空系统漏率测试方法
- 医院建筑设计重点、难点分析及应对措施
- 大坝枢纽工程截流施工方案
- 行政强制法讲座-PPT课件
- 风冷螺杆热泵机组招标技术要求
- 火力发电厂典型事故案例汇编
- (完整版)弱电工程安全技术交底
- 盘点票表格模板
- 报价单模板 Microsoft Excel 工作表
- 国家住宅装饰装修工程施工规范标准
评论
0/150
提交评论