无数书上都有介绍,不多说,模板题。
#include"cstdio" #include"cctype" #include"algorithm" using namespace std; int read() { int c,x=0; while(!isdigit(c=getchar())); while(x=x*10+c-‘0‘,isdigit(c=getchar())); return x; } int a[100001]; void qsort(int l,int r) { int i=l,j=r,mid=a[l+r>>1]; while(i<=j) { while(i<r && a[i]<mid) i++; while(j>l && a[j]>mid) j--; if(i<=j) swap(a[i++],a[j--]); } if(i<r) qsort(i,r); if(j>l) qsort(l,j); } int main() { int n=read(); for(int i=1; i<=n; i++) a[i]=read(); qsort(1,n); for(int i=1; i<=n; i++) printf("%d ",a[i]); return 0; }