知识大全 用代码展示一下合并排序算法
Posted 知
篇首语:关山初度尘未洗,策马扬鞭再奋蹄!本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用代码展示一下合并排序算法相关的知识,希望对你有一定的参考价值。
#include <iostream h>
void Merge(int c[] int d[] int l int m int r)
//合并c[l:m]和c[m+ :r]到d[l:r]
int i=l
j=m+
k=l;
while((i<=m)&&(j<=r))
if(c[i]<=c[j]) d[k++]=c[i++];
else d[k++]=c[j++];
if(i>m)for(int q=j;q<=r;q++)
d[k++]=c[q];
else for(int q=i;q<=m;q++)
d[k++]=c[q];
void MergePass(int x[] int y[] int s int n)
//合并大小为s的相邻子数组
int i= ;
while(i<=n *s)
//合并大小为s的相邻 段子数组
Merge(x y i i+s i+ *s );
i=i+ *s;
//剩余的元素个数少于 s
if(i+s<n) Merge(x y i i+s n );
else for(int j=i;j<=n ;j++)
y[j]=x[j];
void MergeSort(int a[] int n)
int *b=new int [];
int s= ;
while(s<n)
MergePass(a b s n);//合并到数组b
s+=s;
MergePass(b a s n);//合并到数组a
s+=s;
int main()
int t[ ];
cout<<&# ;请输入数组:\\n&# ;;
cout<<&# ;输入 结束\\n&# ;;
int p= ;
int g= ;
while(g!= )
cin>>g;
if(g!= )
t[p]=g;
p++;
//g++;
/*for(int g= ;g< ;g++)
cin>>t[g];*/
MergeSort(t p);
for(int i= ;i<p;i++)
cout<<t[i]<<&# ;\\n&# ;;
return ;
cha138/Article/program/sjjg/201404/30582相关参考
Java代码 插入排序: packagerututilalgorithmsupport; importrututilalgorithmSortUtil; publicclassInse
最近在面试遇到很多排序算法问题总结一下 定义数组如下 [java] int[]array=newint[]; int[]array=newint[]; 首先是插入排序 [java]
C#排序算法大全 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!冒泡排序 学语言要花大力气学数据结
PHP实现插入排序算法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 插入排序(Insertio
C#实现选择排序算法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 选择排序 classSel
从事net工作两年当初学到的数据结构算法一直没有在实际工作中用到近日闲来无事突发奇想要温习一下简单的数据结构算法今日用了一个下午的时间完成了排序中的快速排序以此作为入驻博客园的首篇随笔!思想向后是
各种排序算法的Java实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! packagesxse
知识大全 PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
PHP冒泡排序二分查找顺序查找二维数组排序算法函数的详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
外排序中为何采用k路(k>)合并而不用路合并?这种技术用于内排序有意义吗?为什么?【东南大学三(分)】 .给定输入文件并设记录缓冲区个数k=写出基于败者树的外排序顺串生成算法runs输出的
面试笔试必用-必须掌握的Java排序算法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Java排序