快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用。
#include <bits/stdc++.h>
using namespace std;
void quick_sort(int a[],int left,int right)
{
if(left<right)
{
int i=left,r = right,x = a[left];
while(i<r)
{
while(i<r&&a[r]>=x)r--;
if(i<r)
a[i++] = a[r];
while(i<r&&a[i]<x)i++;
if(i<r)
a[r--] =a[i];
}
a[i] =x;
quick_sort(a,left,i-1);
quick_sort(a,i+1,right);
}
}
int main()
{
int a[5] = {4,6 ,121,11,3};
quick_sort(a,0,4);
for(int i=0;i<5;i++)
cout<<a[i]<<" ";
return 0;
}