Skip to content

排序算法

冒泡排序

基本思想

重复遍历数组,比较相邻元素,如果顺序错误就交换它们。

代码实现

javascript
function bubbleSort(arr) {
  const n = arr.length;
  
  for (let i = 0; i < n - 1; i++) {
    for (let j = 0; j < n - 1 - i; j++) {
      if (arr[j] > arr[j + 1]) {
        [arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
      }
    }
  }
  
  return arr;
}

const arr = [64, 34, 25, 12, 22, 11, 90];
console.log(bubbleSort(arr));

时间复杂度

  • 最好情况: O(n)
  • 最坏情况: O(n²)
  • 平均情况: O(n²)

空间复杂度

O(1)

加载中...

好好学习,天天向上