快速排序
来源:互联网 发布:oracle sql parallel 编辑:程序博客网 时间:2024/05/16 09:26
/*快速排序*/#include <iostream>#include <cstdio>using namespace std;void qkpass( int *r,int sta,int end,int &i ){ int j,x; i=sta , j=end , x=r[i]; while( i<j ) { while( i<j && x<=r[j] ) j--; r[i]=r[j]; while( i<j && x>=r[i] ) i++; r[j]=r[i]; } r[i]=x;}void qksort( int *a,int sta,int end ){ int k; if( sta<end ) { qkpass( a,sta,end,k ); qksort( a,sta,k-1 ); qksort( a,k+1,end ); }}int main(){ int i; int a[10]={73,56,71,2,4,34,47,46,25,12}; qksort( a,0,9 ); for( i=0;i<10;i++ ) cout<<a[i]<<" "; cout<<endl; return 0;}