#include<stdio.h>
#include<stdlib.h>
int sort(int *a,int left,int right){
int i=left,j=right;
int temp=a[left];
while(i<j){
while(i<j&&a[j]>=temp) j--;
a[i]=a[j];
while(i<j&&a[i]<=temp) i++;
a[j]=a[i];
}
a[i]=temp;
return i;
}
void q_sort(int *a,int left,int right){
int base;
if(left<right){
base=sort(a,left,right);
q_sort(a,left,base-1);
q_sort(a,base+1,right);
}
}
int main(void){
int n,i;
int a[100010];
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
q_sort(a,0,n-1);
for(i=0;i<n;i++) printf("%d ",a[i]);
return 0;
}
为什么后3个全是超时啊啊啊 蒟蒻想不通了求大佬指点