以下是 JavaScript 中冒泡排序算法的实现:

function bubbleSort(arr) {
  var len = arr.length;
  for (var i = 0; i < len - 1; i++) {
    for (var j = 0; j < len - i - 1; j++) {
      if (arr[j] > arr[j + 1]) {
        // 更换位置
        var temp = arr[j];
        arr[j] = arr[j + 1];
        arr[j + 1] = temp;
      }
    }
  }
  return arr;
}

// 示例使用
var arr = [64, 34, 25, 12, 22, 11, 90];
console.log(bubbleSort(arr)); // [11, 12, 22, 25, 34, 64, 90]

冒泡排序是一种简单的排序算法,它重复地遍历要排序的数组,比较相邻的元素,并交换它们的位置,直到数组排序完毕。

算法步骤:

  1. 比较相邻的元素。如果第一个元素大于第二个元素,则交换它们的位置。
  2. 重复步骤 1,直到到达数组的末尾。
  3. 对数组进行重复步骤 1 和 2,直到整个数组排序完毕。

示例代码解析:

  • bubbleSort(arr) 函数接受一个数组作为参数,并返回排序后的数组。
  • 两个嵌套的 for 循环用于遍历数组和比较相邻元素。
  • if (arr[j] > arr[j + 1]) 语句判断相邻元素的大小,如果第一个元素大于第二个元素,则交换它们的位置。
  • temp 变量用于临时存储要交换的元素。

冒泡排序的特点:

  • 易于理解和实现。
  • 时间复杂度为 O(n^2),其中 n 是数组的长度。
  • 不稳定排序算法。

总结:

冒泡排序是一种简单的排序算法,适用于小型数组的排序。对于大型数组,它的效率较低,因此建议使用其他更快的排序算法。


原文地址: https://www.cveoy.top/t/topic/mjzn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录