谁能发一下归并排序的模版--求求了

谁能发一下归并排序的模版–求求了
我给他一个解决方案加一个赞

2 个赞

等我一下

2 个赞
#include<bits/stdc++.h>
using namespace std;
int a[10001],b[10001],n,i;
void msort(int x,int y)
{
	int mid,i,j,k;
	if(x==y) return;
	mid=(x+y)/2;
	msort(x,mid);
	msort(mid+1,y);
	i=x;
	j=mid+1;
	k=x;
	while(i<=mid&&j<=y)
	{
		if(a[i]>=a[j])
		{
			b[k]=a[i];
			i++;
			k++;
		}
		else
		{
			b[k]=a[j];
			j++;
			k++;
		}
	}
	while(i<=mid)
	{
		b[k]=a[i];
		i++;
		k++;
	}
	while(j<=y)
	{
		b[k]=a[j];
		j++;
		k++;
	}
	for(i=x;i<=y;++i) a[i]=b[i];
}
int main()
{
	cin>>n;
	for(i=1;i<=n;++i) cin>>a[i];
	msort(1,n);
	for(i=1;i<=n;++i) cout<<a[i]<<" ";
	return 0;
}
3 个赞

加注释的最好 :grinning:

1 个赞

不要太贪!!!

这里啥排序模版都有

建议直接 std::sort()

那是那是

1 个赞