快速排序
1 #include <iostream> 2 using namespace std; 3 void Qsort(int a[],int l,int r) 4 { 5 if(l>=r) return ; 6 int ll=l,rr=r,key=a[ll]; 7 while(ll<rr){ 8 while(ll<rr&&a[rr]>key) rr--; 9 a[ll]=a[rr]; 10 while(ll<rr&&a[ll]<key) ll++; 11 a[rr]=a[ll]; 12 } 13 a[ll]=key; 14 Qsort(a,l,ll-1); 15 Qsort(a,ll+1,r); 16 } 17 int main() 18 { 19 int a[]={1,32,4,43,54,52,42,424,21}; 20 int len=sizeof(a)/sizeof(a[0]); 21 Qsort(a,0,len-1); 22 for(int i=0;i<len;i++) cout<<a[i]<<endl; 23 }