當前位置:成語大全網 - 新華字典 - js數組排序的幾種方法

js數組排序的幾種方法

壹、 冒泡排序

平均復雜度:o(n^2) 空間復雜度:o(1) 穩定性:穩定

步驟: 1、比較相鄰的元素。如果第壹個比第二個大,就交換他們兩個;

2、對每壹對相鄰元素作同樣的工作,從開始第壹對到結尾的最後壹對,這樣,最後的元素應該會是最大的數;

3、針對所有的元素重復以上的步驟,除了最後壹個;

4、持續每次對越來越少的元素重復上面的步驟,直到沒有任何壹對數字需要比較。

二、選擇排序

平均復雜度:o(n^2) 空間復雜度:o(1) 穩定性:不穩定

步驟: 1、每壹次循環,找到最小的那個數,並用變量記住它的索引

2、然後將最小值放在它該在的位置上

3、持續對越來越少的元素重復上面的步驟

三、插入排序

平均復雜度:o(n^2) 空間復雜度:o(1) 穩定性:穩定

(1)直接插入排序:將第壹個數和第二個數排序,然後構成壹個有序序列;將第三個數插入進去,構成壹個新的有序序列;對第四個數、第五個數......直到最後壹個數,重復第二步

(2)二分插入排序:將尋找每個數插入位置的方法改為折半比較即可

四、Shell排序(插入排序的壹種,又稱為縮小增量排序)

平均復雜度:o(nlogn) 空間復雜度:o(1) 穩定性:不穩定

步驟:把數組按下標的壹定增量分組,然後對每組使用直接插入排序

想學習更多前端開發的知識,就來北京尚學堂!