JavaScript實現標準快速排序
阿新 • • 發佈:2018-11-02
快速排序是分治策略的經典實現,分治的策略如下:
-
分解(Divide)步驟:將問題劃分未一些子問題,子問題的形式與原問題一樣,只是規模更小
-
解決(Conquer)步驟:遞迴地求解出子問題。如果子問題的規模足夠小,則停止遞迴,直接求解
-
合併(Combine)步驟:將子問題的解組合成原問題的解
快速排序函式,我們需要將排序問題劃分為一些子問題進行排序,然後通過遞迴求解,我們的終止條件就是,當array.length > 1不再生效時返回陣列
function quickSort(array) { return quick(array, 0, array.