快速排序

    xiaoxiao2021-03-25  76

    快速排序的中心思想就是:选取一个数作为基准,使该数左面的数比该数小,右面的数字大于该数。然后使用递归完成循环过程。

    int Part(int *arr,int low,int high) { int pivotloc = arr[low]; while (low < high) { while (low < high&&arr[high] >= pivotloc) high--; swap(arr[low],arr[high]); while (low < high&&arr[low] <= pivotloc) low++; swap(arr[low], arr[high]); } return low; } void QSort(int *arr, int low, int high) { int p; if (low < high) { p = Part(arr,low,high); QSort(arr,low,p-1); QSort(arr,p+1,high); } }
    转载请注明原文地址: https://ju.6miu.com/read-35973.html

    最新回复(0)