冒泡排序(Bubble Sort)是一种简单直观的排序算法,它重复地遍历要排序的数列,每次比较两个元素,如果它们的顺序错误就把它们交换过来。时间复杂度为O(n^2),不适合大规模数据的排序。
以下是JavaScript实现的冒泡排序:
javascript复制代码
function bubbleSort(arr) {
var len = arr.length;
for (var i = 0; i < len - 1; i++) { // 外层循环控制轮数
for (var j = 0; j < len - 1 - i; j++) { // 内层循环控制每一轮比较的次数
if (arr[j] > arr[j + 1]) { // 如果前面的数大于后面的数,就交换它们的位置
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
测试代码:
javascript复制代码
var arr = [64, 34, 25, 12, 22, 11, 90];
console.log(bubbleSort(arr));
// 输出:[11, 12, 22, 25, 34, 64, 90]
以上就是一个基本的冒泡排序的实现,它通过不断比较相邻的两个数大小,将最大值 “冒泡” 到数列的末尾,最终实现排序。