前端排序演算法實現 JS氣泡排序

2021-10-02 16:03:09 字數 639 閱讀 9791

讓陣列中的當前項和後一項進行比較,如果當前項比後一項大,則兩項交換位置(讓大的靠後)即可,直到最後變為從小到大

下面我放張我自己畫的圖可能會更好理解一下:

(…並不是所有的陣列都進行一輪判斷,下圖只是個例外,正常的話第一輪判斷結束後陣列不是從小到大排序的)

下面話不多說,放**啦:

//建立個函式來判斷

function

bubble

(arr)}}

//返回這個陣列

return arr;

}//建立乙個陣列

let arr=[12

,3,4

,46,23

]//給陣列賦值並呼叫自己寫的氣泡排序函式

arr=

bubble

(arr)

//最後輸出

console.

log(arr)

此時頁面上就顯示出來已經排好序的陣列啦~

排序演算法氣泡排序 插入排序 選擇排序js實現

冒泡,插入,選擇 能用插入排序就用插入排序 排序演算法 是否原地排序 是否穩定排序 演算法複雜度 最好,最壞,平均 冒泡是 是o n o n2 o n2 插入是 是o n o n2 o n2 選擇是 否o n2 o n2 o n 2 穩定性表示,相同資料,是否改變了資料原有的位置,比如 2,4,5,...

JS實現氣泡排序

氣泡排序的重要思想 相鄰資料對之間比較 比較完後大數始終大數在小數後面於是每一次相鄰資料對比較完後,大數就往上冒一點 所以,當資料為正序排列時 最好情況 比較次數,移動次數,時間複雜度最小 比較次數為 n 1 次 移動次數為 0 次 時間複雜度為 o n 然而,當資料為反序排列時 最差情況 比較次數...

JS實現氣泡排序

1.氣泡排序 思路 a 比較兩個相鄰的元素,如果後乙個比前乙個大,則交換位置 b 第一輪的時候最後乙個元素應該是最大的乙個 c 按照第一步的方法進行兩個相鄰的元素的比較,由於最後乙個元素已經是最大的了,所以最後乙個元素不用比較。function sort element console.log el...