#include<bits/stdc++.h>
using namespace std;
int a[100005];
int n;
void kp(int x,int y)
{
if(x<y){
int jz=a[x];
int i=x,j=y;
int temp;
while(i!=j)
{
while(a[j]>=jz&&i<j)
j--;
while(a[i]<=jz&&i<j)
i++;
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
a[x]=a[j];
a[j]=jz;
kp(x,j-1);
kp(j+1,y);
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
kp(1,n);
for(int i=1;i<=n;i++)
printf("%d ",a[i]);
return 0;
}
快排模板。
于 2022-10-09 22:54:52 首次发布