归并排序
来源:互联网 发布:网络数据分析 编辑:程序博客网 时间:2024/06/11 06:34
二路归并排序
时间复杂度:
空间复杂度:
稳定性:稳定
Note: 实现时应注意空间复杂度的控制。
代码:
#include <iostream>#include <stdio.h>#define MAXSIZE 20using namespace std;int mSq[MAXSIZE],tempSq[MAXSIZE];void MergeSql(int Sq1[],int s,int m,int t){ int i=s,j=m+1,k=s; for(;i<=m&&j<=t;k++) { if(Sq1[i]<=Sq1[j]) tempSq[k]=Sq1[i++]; else tempSq[k]=Sq1[j++]; } while(i<=m) tempSq[k++]=Sq1[i++]; while(j<=t) tempSq[k++]=Sq1[j++]; for(i=s;i<=t;i++) Sq1[i]=tempSq[i];}void MergeSort(int SqA[],int s,int t){ if(s!=t) { int m=(s+t)/2; MergeSort(SqA,s,m); MergeSort(SqA,m+1,t); MergeSql(SqA,s,m,t); }}int main(){ int length=6; for(int i=0;i<length;i++) scanf("%d",&mSq[i]); MergeSort(mSq,0,5); for(int i=0;i<length;i++) printf("%d ",mSq[i]); printf("\n"); return 0;}
阅读全文
0 0
- 归并排序-归并排序
- 归并和归并排序
- 归并与归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 排序::归并
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 对表的一些操作
- (poj-1163)教你彻底学会动态规划——入门篇
- 主题通配符
- [游戏编程模式].(Game.Programming.Patterns).(美)Robert.Nystrom.pdf
- 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)
- 归并排序
- CodeIgniter框架源码学习之配置类--Config.php
- 【CUGBACM15级BC第12场 A】【STL】hdu 5058 So easy
- SeetaFace开源人脸识别引擎
- ubuntu 配置静态ip && git clone ssh port 22问题 && git 全局代理
- 最短路径
- 文件I/O
- Java接收Cordys中webservice接口的返回数据并解析xml获取相应节点数据
- SVM NG机器学习