排序算法实验报告材料

排序算法实验报告材料

ID:28826265

大小:66.50 KB

页数:5页

时间:2018-12-14

排序算法实验报告材料_第1页
排序算法实验报告材料_第2页
排序算法实验报告材料_第3页
排序算法实验报告材料_第4页
排序算法实验报告材料_第5页
资源描述:

《排序算法实验报告材料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实用标准文案实验课程:算法分析与设计实验名称:几种排序算法的平均性能比较(验证型实验)实验目标:(1)几种排序算法在平均情况下哪一个更快。(2)加深对时间复杂度概念的理解。实验任务:(1)实现几种排序算法(selectionsort,insertionsort,bottomupsort,quicksort,堆排序)。对于快速分类,SPLIT中的划分元素采用三者A(low),A(high),A((low+high)/2)中其值居中者。(2)随机产生20组数据(比如n=5000i,1≤i≤20)。数据均属于范围(0,105)内的整数。对于同一组数据,运行以上几

2、种排序算法,并记录各自的运行时间(以毫秒为单位)。(3)根据实验数据及其结果来比较这几种分类算法的平均时间和比较次数,并得出结论。实验设备及环境:PC;C/C++等编程语言。实验主要步骤:(1)明确实验目标和具体任务;(2)理解实验所涉及的几个分类算法;(3)编写程序实现上述分类算法;(4)设计实验数据并运行程序、记录运行的结果;(5)根据实验数据及其结果得出结论;(6)实验后的心得体会。一:问题分析(包括问题描述、建模、算法的基本思想及程序实现的技巧等):1:随机生成n个0到100000的随机数用来排序的算法如下.for(intn=1000;n<2000

3、0;n+=1000){inta[]=newint[n];for(inti=0;i

4、j;for(inti=1;i=0&&b[i]

5、st,intce,intfi){intcount=0;//a表示数组,st表示要排序的数据的起点,ce表示第一部分的终点也是第二部分的起点,fi表示第二部份的终点inti=st;intj=ce;精彩文档实用标准文案intcp=0;//由于数组c从0开始,而a是从st开始,并不一定是0.故要通过cp来表示c的第cp个值.intc[]=newint[fi-st];for(;ia[j]){count++;c[cp]=a[j];cp++;}elsebreak;}c[cp]=a[i];cp++;}//若

6、j的值还小于fi则继续把j到fi的值复制给c.此处也与书上的不同,主要由自己的理解来实现for(;j

7、h;j++){if(a[j]<=x){count++;i=i+1;if(i!=j){inttemp=a[i];a[i]=a[j];a[j]=temp;}}}inttemp=a[low];a[low]=a[i];a[i]=temp;intw=i;if(lowlow)count=count+spilt(a,low,w-1);//此处的if语句可以减少很多不必要的排序,例如只剩下一个数字时就不必再用spilt来排序了.if(w+1

8、验数据及其结果(可用图表形式给出):排序个数插入排序选择排序合并排

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

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

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