算法基礎之快速排序(二)

算法基礎之快速排序(二)

話不多說,瞭解快速排序的原理
快速排序(Quicksort)是對冒泡排序的一種改進。
它的基本思想是:通過一趟排序將要排序的數據分割成獨立的兩部分,其中一部分的所有數據都比另外一部分的所有數據都要小,然後再按此方法對這兩部分數據分別進行快速排序,整個排序過程可以遞歸進行,以此達到整個數據變成有序序列。

–摘自百度

假設有一個無序數組需要從小到大進行排序,快排的思路就是 從當前數組中,找到一個元素作爲基準比較值(key),分別從兩個方向進行比較。從後往前找,比key小元素放在數組前面。然後從前往後找,比key大的元素放在數組後面。最終兩個方向交匯到中間,讓key交換到數組的中間位置。

從下面代碼可以看出,取一個基準值,然後先從前往後找,再從後往前找,最後遞歸兩個數組,合併數組就可以得出最後的結果

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章