算法设计与分析软件.docx

算法设计与分析软件.docx

ID:59605977

大小:103.28 KB

页数:35页

时间:2020-11-15

算法设计与分析软件.docx_第1页
算法设计与分析软件.docx_第2页
算法设计与分析软件.docx_第3页
算法设计与分析软件.docx_第4页
算法设计与分析软件.docx_第5页
资源描述:

《算法设计与分析软件.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《算法设计与分析》实验报告项目名称分治算法实验专业班级软件工程1503学号3903150333姓名曾永豪实验成绩:批阅教师:年月日实验1《分治算法实验》一、实验目的1.了解分治策略算法思想2.掌握快速排序、归并排序算法3.了解其他分治问题典型算法二、实验内容1.编写一个简单的程序,实现归并排序。2.编写一段程序,实现快速排序。3.编写程序实现循环赛日程表。设有n=2k个运动员要进行网球循环赛。现要设计一个满足以下要求的比赛日程表:(1)每个选手必须与其它n-1个选手各赛一次(2)每个选手一天只能赛一场(3)循环赛进行n-1天三、算法思想分析大问题分解为子问题,这些子问题相

2、互独立且与原问题相同。分别求解子问题,合并解,自底向上逐步求出原来问题的解。四、实验过程分析写在代码注释中五、算法源代码及用户屏幕1、归并排序:#includeusingnamespacestd;#defineN7//待排序数据个数voidmerge(intarray[],intp,intq,intr);voidmerge_sort(intdata[],intp,intr);//////////////////////////////////////////////////////////////////////////////////////////

3、/////////////////////voidmain(){intdata[]={44,12,145,-123,-1,0,121};cout<<"--------------------array---------------------"<

4、

5、经排序序列的起始位置begin2=q+1;end2=r;k=0;while((begin1<=end1)&&(begin2<=end2))//比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置{if(array[begin1]

6、while(begin2<=end2)//若第二个序列有剩余,直接拷贝出来粘到合并序列尾{temp[k++]=array[begin2++];}for(i=0;i<(r-p+1);i++)//将排序好的序列拷贝回数组中array[p+i]=temp[i];delete[](temp);}//////////////////////////////////////////////////////////////////////////////////////////////////////////////voidmerge_sort(intdata[],intleft,in

7、tright){if(left

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。