平均復雜度: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) 穩定性:不穩定
步驟:把數組按下標的壹定增量分組,然後對每組使用直接插入排序
想學習更多前端開發的知識,就來北京尚學堂!