C++ 快速排序

2014-11-24 02:30:37 · 作者: · 浏览: 4
[cpp]
int partion(int a[],int low,int high)
{
int key=a[low];
while(low {
while (low high--;
if(low {
a[low]=a[high];
a[high]=key;
}
while (lowa[low])
low++;
if(low {
a[high]=a[low];
a[low]=key;
}
}
return low;
}
void quick_sort(int a[],int low,int high)
{
if(low {
int mid=partion(a,low,high);
quick_sort(a,0,mid-1);
quick_sort(a,mid+1,high);
}
}