冒泡排序(Bubble Sort)是一種簡單的排序算法,它通過多次迭代列表,比較和交換相鄰的元素,將最大(或最小)的元素逐漸“浮”到列表的一端(通常是最右端)。冒泡排序的名稱來自於元素像氣泡一樣從底部浮到頂部的過程
Worst Performance O(n^2) Best Performance O(n) Average Performance O(n^2)
左右相鄰做比較進行交換,不斷跑迴圈
可以進行的優化:
如果裡面迴圈沒進行swap就停止
function bubbleSort(array) { for (let i = 0; i < array.length - 1; i++) { for (let j = array.length - 1; j > i; j--) { if (array[j] < array[j - 1]) { [array[j], array[j - 1]] = [array[j - 1], array[j]]; } } } console.log(array); } bubbleSort([4, 1, 7, 5, 3, 2]);
function bubbleSort(array) { for (let i = 0; i < array.length - 1; i++) { for (let j = array.length - 1; j > i; j--) { if (array[j] < array[j - 1]) { [array[j], array[j - 1]] = [array[j - 1], array[j]]; } } } console.log(array); } bubbleSort([4, 1, 7, 5, 3, 2]);