快排
1,选定中枢(默认数组的第一个)
2,比中枢小的放左边,比中枢大的放右边。
3,递归调用
void quickSort(int *array, int left, int right) {
if (array == NULL) {
return;
}
if (left < right) {
int pivot = array[left];//变量声明过早,如果为空,变量无意义
int low = left;
int high = right;
while (low < high) {
//比较的是移动的下标 low high
while (array[high] >= pivot&&low
}
array[low] = array[high];
while (array[low] <= pivot&& low < high) {
low++;
}
array[high] = array[low];
//没有把中枢放到中间
array[low] = pivot;
quickSort(array, left, low-1);
quickSort(array, high+1, right);