使用JS实现一个简单的冒泡排序

26 阅读1分钟

下面是使用JavaScript实现一个简单的冒泡排序的示例代码:

function bubbleSort(arr) {
  let len = arr.length;
  for (let i = 0; i < len - 1; i++) {
    for (let j = 0; j < len - 1 - i; j++) {
      // 如果前一个元素大于后一个元素,则交换它们的位置
      if (arr[j] > arr[j + 1]) {
        let temp = arr[j];
        arr[j] = arr[j + 1];
        arr[j + 1] = temp;
      }
    }
  }
  return arr;
}

// 示例用法
var array = [5, 3, 8, 4, 2];
console.log(bubbleSort(array)); // 输出 [2, 3, 4, 5, 8]

在这个示例中,我们定义了一个名为bubbleSort的函数,它接受一个数组作为参数。通过使用两层循环,外层循环控制比较的轮数,内层循环用于比较相邻的元素并进行交换。

在每个内层循环中,如果前一个元素大于后一个元素,则交换它们的位置。通过这样的比较和交换操作,每一轮循环都会将最大的元素移动到数组的最后。

最后,返回排序后的数组。

在示例用法中,我们创建了一个数组array,并将其作为参数传递给bubbleSort函数。最后,通过console.log输出排序后的结果。