排序算法课程设计

排序算法课程设计

ID:35627163

大小:115.00 KB

页数:14页

时间:2019-04-03

排序算法课程设计_第1页
排序算法课程设计_第2页
排序算法课程设计_第3页
排序算法课程设计_第4页
排序算法课程设计_第5页
资源描述:

《排序算法课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、排序算法课程设计专业班级学号姓名指导老师一:课程设计的目的1.掌握各种排序的基本思想2.掌握各种排序的算法实现3.掌握各种排序的算法优劣分析花费的时间计算4.掌握各种排序算法所适用的不同场合。二:课程设计的内容(1)冒泡、直插、选择、快速、希尔、归并、堆排序算法进行比较;(2)待排序的元素的关键字为整数。其中的数据用伪随机产生程序产生(如10000个,1000个),再使用各种算法对其进行排序,记录其排序时间,再汇总比较;(3)将每次测试所用的时间,用条形图进行表示,以便比较各种排序的优劣。三:课程设计的实现(1)直接插入排序#includetypedefin

2、tkeytype;structdatatype{keytypekey;};/*intrand(void);voidsrand(unsignedintseed);*/#include#include#include#includevoidInsertSort(datatypea[],intn)//用直接插入法对a[0]--a[n-1]排序{inti,j;datatypetemp;for(i=0;i-1&&temp.key<=a[j].key)

3、{a[j+1]=a[j];j--;}a[j+1]=temp;}}voidmain(){/*srand((unsigned)time(NULL));//随机种子*//*time_tt;srand((unsigned)time(&t));*/time_tt1,t2;srand((unsigned)GetCurrentTime());datatypenum[10000];t1=GetCurrentTime();for(inti=0;i<10000;i++){num[i].key=rand();}intn=10000;InsertSort(num,n);for(intj=0;j<10000

4、;j++)cout</*intrand(void);voidsrand(unsignedintseed);*/#include#include#include#includetypedefintkeytype;structd

5、atatype{keytypekey;};voidShellSort(datatypea[],intn,intd[],intnumOfD)//用希尔排序法对记录a[0]--a[n-1]排序//各组内采用直接插入法排序{inti,j,k,m,span;datatypetemp;for(m=0;m-1&&temp.key<=a[j].key){a[j+span]=a[j];j=j-span;}a

6、[j+span]=temp;}}}}voidmain(){/*srand((unsigned)time(NULL));//随机种子*//*time_tt;srand((unsigned)time(&t));*/time_tt1,t2;srand((unsigned)GetCurrentTime());datatypenum[10000];t1=GetCurrentTime();for(inti=0;i<10000;i++){num[i].key=rand();}intn=10000,d[]={1000,100,10,1},numOfd=4;ShellSort(num,n,d,num

7、Ofd);for(intj=0;j<10000;j++)cout<typedefintkeytype;structdatatype{keytypekey;};/*intrand(v

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

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

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