一個簡單的快排實現方法

參考:
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);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章