讓陣列中的當前項和後一項進行比較,如果當前項比後一項大,則兩項交換位置(讓大的靠後)即可,直到最後變為從小到大
下面我放張我自己畫的圖可能會更好理解一下:
(…並不是所有的陣列都進行一輪判斷,下圖只是個例外,正常的話第一輪判斷結束後陣列不是從小到大排序的)
下面話不多說,放**啦:
//建立個函式來判斷
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...