快速排序,不稳定,时间复杂度平均、最好O(nlogn),最坏O(n^2),空间复杂度O(nlogn)
void QuickSort(int *arr, int left, int right)
{
int i,j;
int key;
if(left >= right)
return;
key = arr[left];
i = left;
j = right;
while(i < j)
{
while(i<j && key<=arr[j])
--j;
arr[i] = arr[j];
while(i<j && key>=arr[i])
++i;
arr[j] = arr[i];
}
arr[i] = key;
QuickSort(arr, left, i-1);
QuickSort(arr, i+1, right);
}