一个简单的快排实现方法

参考:
https://segmentfault.com/a/1190000002651247

一个简单的快排实现方法:


int partition(int arr[], int l, int r) {
    int k = l, pivot = arr[r];
    for (int i = l; i < r; i++)
        if (arr[i] <= pivot)
            swap(arr[i], arr[k++]);
    swap(arr[k], arr[r]);
    return k;
}

void quicksort(int arr[], int l, int r) {
    if (l < r) {
        int pivot = partition(arr, l, r);
        quicksort(arr, l, pivot - 1);
        quicksort(arr, pivot + 1, r);
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_41813895/article/details/79967293