题解
2023-08-20 14:59:17
发布于:广东
1阅读
0回复
0点赞
太经典了
#include <bits/stdc++.h>
using namespace std;
void mergesort(vector<int> array, int start, int end)
{
if (start < end)
{
vector<int> a(100010);
vector<int> b(100010);
int mid = (start + end) / 2;
cout<<"[";
for(int i=start;i<mid+1;i++)
{
cout<<array[i]<<" ";
a[i]=array[i];
}
cout<<"],[";
for(int i=mid+1;i<=end;i++)
{
cout<<array[i]<<" ";
b[i]=array[i];
}
cout<<"]"<<endl;
a.shrink_to_fit();
b.shrink_to_fit();
mergesort(a, start, mid);
mergesort(b, mid+1, end);
}
}
vector<int> A(100010);
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++) cin>>A[i];
mergesort(A,0,n-1);
return 0;
}
这里空空如也
有帮助,赞一个