快速排序

快速排序的数组实现

 1 void quickSort(int *arr, int low, int high)
 2 {
 3     int pivot = arr[low];// 将第一个元素作为支点
 4     int beg = low, end = high;//暂存起点、终点下标
 5 
 6     while(low < high)
 7     {
 8         while(low < high && arr[high] >= pivot)
 9             high--;
10         arr[low] = arr[high];
11 
12         while(low < high && arr[low] <= pivot)
13             low++;
14         arr[high] = arr[low];
15 
16         arr[low] = pivot;//将支点放到最终的位置
17     }
18     //递归
19     if(beg != low)
20         quickSort(arr,beg,low-1);
21     if(end != high)
22         quickSort(arr,low+1,end);
23 }
原文地址:https://www.cnblogs.com/cpsmile/p/4424490.html