快速排序 D&C

分而治之D&C(divide and conquer, D&C).
步驟:
1.選擇基準值;
2.將數組分成兩個子數組:小於基準值的元素組成的數組和大於基準值元素組成的數組;
3.對這兩個數組進行快速排序;

def quicksort(array):
    if len(array) < 2:
        return array
    else:
        pivot = array[0]
        less = [i for i in array[1:] if i < pivot]
        greater = [i for i in array[1:] if i > pivot]
        return quicksort(less) + pivot + quicksort(greater)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章