



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一、递规与分治算法 班级:计072学号:3070911052姓名:赵凯一、 实验目的与实验内容1掌握递归与分治方法的基本设计思想与原则。2二分法,汉诺塔问题,给定a,用二分法设计出求an的算法。二、 实验要求1 C+/C完成算法设计和程序设计并上机调试通过。2 撰写实验报告,提供实验结果和数据。3 分析算法,要求给出具体的算法分析结果,包括时间复杂度和空间复杂度,并简要给出算法设计小结和心得。三、 程序实现二分法:在数组an中找x,将n个元素分成个数大致相同的两半,取an与x作比较。如果x=a,则找到x,算法中止;如果xan/2,则只要在数组a的右半部继续搜索x。汉诺塔:n个盘子从a到b,可经由c。当n=1时,直接从a到b。当n1时,将上边n-1个盘子看成一个整体,从a移到辅助c上,最后一个移到b上。如此,对n-1个盘子使用同样的移动规则从c移到b。至此,n个盘子的移动可以看成两个n-1个圆盘移动的问题,这有可以递归使用上面的方法来做。a的n次幂:将指数n分解为n/2与n/2t同时递归的调用直至将n分解为一时返回时间复杂度:二分法:由于每执行一次while循环,待搜索数组的长度减少了一般,所以,在最坏情况下while被执行了0(n)次,循环体内运算需要0(1)次,因此整个算法在最坏情况下的时间复杂性为(n)。汉诺塔:规模为n问题,可以分解为两个规模为n-1的问题。所以T(n)=2*T(n-1)+1,所以汉诺塔的时间复杂度为0(2n)。a的n次幂:规模为n问题,可以分解为两个规模为n/2的问题。所以T(n)=2*T(n/2)+1,所以汉诺塔的时间复杂度为0(n*n)。四、 心得体会这次的三个实验总总体上来说,还是比较简单。实验过程比较简单,然而前期工作却不少,我认为这次试验的关键就是如何分解问题,如果相通了这个问题,那实验就比较容易了。五、 源程序清单(见附录:源程序)。二分法:#includeusing namespace std;int binarySearch(int a, int x, int n);int main()int n;coutn;int *a=new intn;coutinput nnumbers of arry:endl;for(int i=0;iai;for(i=0;in;i+)/显示数组coutai ;int x;coutx;if(binarySearch(a,x,n)!=-1)调用二分查找coutxis the binarySearch(a,x,n)+1th numberendl;elsecoutnot found!endl; return 0;int binarySearch(int a, int x, int n) int left = 0; int right = n - 1;/左右界限 while (left amiddle) left = middle + 1; else right = middle - 1; return -1; / 未找到x 汉诺塔:#include#includeusing namespace std;void move(char e,char f)/定义方向移动函数 coute f0) hanoi(n-1,a,c,b); move(a,b); hanoi(n-1,b,a,c);int main() int t; coutt;/测试次数 for(int q=0;qt;q+) int d;/盘子数 coutd; hanoi(d,a,b,c); coutTotal Steps: pow(2.0,d)-1endl; return 0;a的n次幂:#includeusing namespace std;int pow(int,int);int main() int a,n,an,t; for(t=0;t4;t+) cout输入底数 a:a; cout输入指数 nn; an=pow(a,n); couta的次幂是anendl; ret
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年证券分析师之发布证券研究报告业务题库及答案
- 2025年试验检测师题库及完整答案网校专用
- 医美咨询目标规划方案
- 南京楼道出新施工方案
- 2025年特种纤维项目立项申请报告模板
- 心理咨询室粉刷方案
- 配餐营销方案
- 手机店圣诞活动方案策划
- 健康咨询情绪管理方案范文
- 咨询服务的响应方案
- T/CAZG 003-2019亚洲象饲养管理技术规范
- 《智慧仓储管理》课程标准
- 火锅店股东协议合同协议
- 财产申报表-被执行人用
- 电梯曳引钢丝绳维护保养制度
- 江苏扬州历年中考语文古诗欣赏试题汇编(2003-2024)
- 沪教版(五四学制)(2024)六年级下册单词表+默写单
- 茶叶加工工(中级)模拟试题与答案
- 高考语文复习【高效课堂精研】打造议论文分论点+课件
- 《SAP培训资料》课件
- 《CT增强扫描碘对比剂外渗预防与护理规范》
评论
0/150
提交评论