#include <iostream>
#include <iterator>
using namespace std;
int partion(int a[], int left, int right){
int key=a[left];
while(left<right){
while(left<right && a[right]>key) right--;
a[left]=a[right];
while(left<right && a[left]<key) left++;
a[right]=a[left];
}
a[left]=key;
return left;
}
void quickSort(int a[], int left, int right){
if(left<right){
int x=partion(a,left,right);
quickSort(a,left,x-1);
quickSort(a,x+1,right);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[]={2,1,3,4,8,9,7,5,6};
int len =sizeof(a)/sizeof(int);
quickSort(a,0,len-1);
copy(a,a+len,ostream_iterator<int>(cout,","));
return 0;
}
快速排序
最新推荐文章于 2024-07-17 10:35:12 发布