归并排序的简易实现

归并排序:

原理简单,即多个有序数组合并成一个有序数组的排序。

其中二路归并是基础,一般书上都会有例子,这里笔者提供一个三路归并的例子。

#include
using namespace std;
int func(int a1[],int a2[],int a3[],int n1,int n2,int n3,int al[18])
{
	int i,j,k,t;
	int a[18]={0};
	for(i=0,j=0,k=0,t=0;t!=18;t++)
	{
		if(i!=n1&&(j==n2||a1[i]<=a2[j])&&(k==n3||a1[i]<=a3[k]))
		{
			a[t]=a1[i];
			i++;
			continue;
		}
		if(j!=n2&&(i==n1||a2[j]


你可能感兴趣的:(c++,n2)