📜  排序算法-冒泡排序(1)

📅  最后修改于: 2023-12-03 15:10:10.386000             🧑  作者: Mango

排序算法-冒泡排序

冒泡排序,是一种简单的排序算法。它重复地遍历要排序的列表,比较相邻的两个元素,如果顺序不对就交换它们的位置。遍历列表的工作是重复地进行直到列表变成有序为止。

算法步骤
  1. 比较相邻的元素,如果第一个比第二个大,就交换它们的位置
  2. 对每一对相邻元素做同样的工作,从开始第一对到结尾最后一对,这样在最后的元素应该会是最大的数
  3. 针对所有的元素重复以上的步骤,除了最后一个
  4. 重复步骤1~3,直到排序完成
代码实现

以下是 JavaScript 实现冒泡排序的示例代码:

function bubbleSort(array) {
  const length = array.length;

  for (let i = 0; i < length - 1; i++) {
    for (let j = 0; j < length - 1 - i; j++) {
      if (array[j] > array[j + 1]) {
        const temp = array[j];
        array[j] = array[j + 1];
        array[j + 1] = temp;
      }
    }
  }

  return array;
}

const unsortedArray = [1, 8, 4, 6, 0, 3, 5, 2, 7, 9];
console.log(bubbleSort(unsortedArray)); // 输出 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

以上代码中, bubbleSort 函数接受一个数组参数,它实现了冒泡排序的逻辑。 unsortedArray 是一个要排序的数组,调用 bubbleSort 函数后,将得到排序后的数组并打印输出。