今天刚学的
#include<stdio.h> int a[1000]; void swap(int x, int y) { int tmp; tmp=a[x]; a[x]=a[y]; a[y]=tmp; } void quickSort(int left, int right) { if(left>right) return ; int i,j; int tmp=a[left];//每次找一个基准数,将比他大的放在一边 i=left; //比他小的放在另一边 j=right; while(i!=j) { while(a[j]>=tmp&&i<j) j--; swap(i,j); while(a[i]<=tmp&&i<j) i++; swap(i,j); } quickSort(left,i-1); quickSort(i+1,right); } int main() { int n; scanf("%d",&n); for(int i=0;i<n;i++) scanf("%d",&a[i]); quickSort(0,n-1); for(int i=0;i<n;i++) printf("%d ",a[i]); return 0; }