归并排序模板
void MergeSort(int a[],int l,int r){
if(l==r){
return ;
}
int mid=(l+r)/2;
MergeSort(int a[],int l,int mid+1);
MergeSort(int a[],int mid+1,int r);
merge(int a[],int l,int mid,int r);
}
void merge(int a[],int l,int mid,int r){
int i=l,j=mid+1;k=0;
int *help=(int *)malloc(sizeof(int)*(r-l+1));
while(i<=mid&&j<=r){
help[k++]=a[i]<=a[j]?a[i++]:a[j++]
}
while(i<=mid)
help[k++]=a[i++];
while(j<=r)
help[k++]=arr[j++];
}