c语言各种排序方法及其所耗时间比较程序.docx

c语言各种排序方法及其所耗时间比较程序.docx

ID:63041343

大小:67.19 KB

页数:7页

时间:2021-08-05

c语言各种排序方法及其所耗时间比较程序.docx_第1页
c语言各种排序方法及其所耗时间比较程序.docx_第2页
c语言各种排序方法及其所耗时间比较程序.docx_第3页
c语言各种排序方法及其所耗时间比较程序.docx_第4页
c语言各种排序方法及其所耗时间比较程序.docx_第5页
资源描述:

《c语言各种排序方法及其所耗时间比较程序.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言各种排序方法及其所耗时间比较程序ThefinaleditionwasrevisedonDecember14th,2020.#inc1udSinclude<>#include<>#include<>#include<>constintN=1000;〃数据量,用于检测算法质量constintM=1000;//执行次数〃冒泡排序(递增)voidBubblesort(intr[],intn)(intflag=l;//flag为0停止排序for(inti=l;i=i;j)if(r[j]

2、j];r[j]=r[j-l];r[j-l]=t;flag=1;)if(flag==0)return;})〃快速排序voidquicksort(intr[],intleft,intright)(inti,j;intswap;i=left;j=right;swap=r[left];while(ir[i]))i++;if(ileft)quicksort(r,left,i-

3、l);if(i=0;i—)creatheap(r,i,n);for(i=n-1;i>=0;i)(t=

4、r[0];r[0]=r[i];r[i]=t;creatheap(r,0,i-l);}return;}〃二路归并voidmerge(intr[],intrl[],intlow,intmid,inthigh)〃进行二合一的函数(inti=low,j=mid+l,k=low;while((i<=mid)&&(j<=high))(if(r[i]<=r[j])rl[k++]=r[i++];elserl[k++]=r[j++];}while(i<=mid)rl[k++]=r[i++];while(j<=high)rl[k++]=r[j++];}一voidmergepass(intr[]

5、,intrl[],intlength)〃用来区分填入merge函数的变量计算式(inti=0,j;while(i+2*length<=N)(merge(r,rl,i,i+length-l,i+2*length-l);i=i+2*length;}if(i+length-l

6、);length=2*length;mergepass(rl,r,length);length=2*length;}return;}〃进行输出voidprint(intr[],intn)(for(inti=0;i<=n-l;i++)(if(i%10==0){cout«endl;}cout<

7、ndl;cin»j;srand((unsigned)time(?(ULL));for(i=0;i

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

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

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