博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
归并排序的一个练习
阅读量:4331 次
发布时间:2019-06-06

本文共 1011 字,大约阅读时间需要 3 分钟。

今天知道了Dennis Ritchie的去世,有点小消沉。大师一路走好.....

--------------------------------------------------------------------------------------

归并排序简单来说就是将一个集合分为若干小集合,每一小集合内部进行排序,然后将这些有序的集合进行排序都到最终的结果。归并排序的时间复杂度为nlogn。

一个归并排序的小例子:

1 #include
2 void merge(int array[],int result[],int low,int mid,int high){
3 int i,j,k; 4 printf("low = %d,mid = %d,high = %d\n",low,mid,high); 5 for(i=low,j=mid+1,k=0;i<=mid&&j<=high;){
6 //按大小赋值,注意++ 7 if(array[i]
=high) return; 28 int mid=(low+high)/2; 29 merge_sort(array,result,low,mid); 30 merge_sort(array,result,mid+1,high); 31 merge(array,result,low,mid,high); 32 } 33 int main(void){
34 int a[10]={
10,9,8,7,100,22,34,1,6,0}; 35 int b[10]; //辅助数组 36 int i; 37 merge_sort(a,b,0,9); 38 for(i=0;i<10;i++){
39 printf("%d ",a[i]); 40 } 41 printf("\n"); 42 return 0; 43 }

转载于:https://www.cnblogs.com/aLittleBitCool/archive/2011/10/13/2210744.html

你可能感兴趣的文章
算法导论笔记(四)算法分析常用符号
查看>>
ultraedit激活
查看>>
总结(6)--- python基础知识点小结(细全)
查看>>
亿级曝光品牌视频的幕后设定
查看>>
ARPA
查看>>
JSP开发模式
查看>>
我的Android进阶之旅------&gt;Android嵌入图像InsetDrawable的使用方法
查看>>
Detours信息泄漏漏洞
查看>>
win32使用拖放文件
查看>>
Android 动态显示和隐藏软键盘
查看>>
raid5什么意思?怎样做raid5?raid5 几块硬盘?
查看>>
【转】how can i build fast
查看>>
null?对象?异常?到底应该如何返回错误信息
查看>>
django登录验证码操作
查看>>
(简单)华为Nova青春 WAS-AL00的USB调试模式在哪里开启的流程
查看>>
图论知识,博客
查看>>
[原创]一篇无关技术的小日记(仅作暂存)
查看>>
20145303刘俊谦 Exp7 网络欺诈技术防范
查看>>
原生和jQuery的ajax用法
查看>>
iOS开发播放文本
查看>>