megersort算法的一个简单的例子.
#include <iostream>
void megersort(int a[], int n, int b[], int m, int* m_sort)
{
int i=0,j=0;
for( ;i<n&&j<m;)
*m_sort++ = ( (a[i]<b[j])?a[i++]:b[j++] );
while( i<n )
*m_sort++ =a[i++];
while(j<m)
*m_sort++ = b[j++];
}
int main()
{
int a[5]={15,18,21,35,51};
int b[5]={7,16,19,31,54};
int* m_p =new int [10];
megersort( a, 5, b, 5, m_p);
for( int count=0;count<10;++count)
{
std::cout<<m_p[count]<<" ";
}
std::cout<<std::endl;
return 0;
}