#include<iostream> #include<cstring> using namespace std; void q_sort(int *a,int left,int right) { if(left>=right) { return ; } swap(a[left],a[(left+right)/2]); int i=left; int j=right; int key=a[left]; while(i<j) { while(i<j&&key<a[j]) j--; if(i<j) a[i++]=a[j]; while(i<j&&key>a[j]) i++; if(i<j) a[j--]=a[i]; } a[i]=key; q_sort(a,left,i-1); q_sort(a,i+1,right); } int a[100005]; int main() { int n; cin>>n; for(int i=0;i<n;i++) { cin>>a[i]; } q_sort(a,0,n-1); for(int i=0;i<n-1;i++) { cout<<a[i]<<" "; } cout<<a[n-1]<<endl; return 0; }
快排实现
猜你喜欢
转载自blog.csdn.net/duanghaha/article/details/80052178
今日推荐
周排行