Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js 冒泡排序

作者:我视你如狗ㄟ   发布日期:2025-11-20   浏览:19

// 冒泡排序的 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;
}

// 示例用法
let array = [64, 34, 25, 12, 22, 11, 90];
console.log("排序前:", array);
bubbleSort(array);
console.log("排序后:", array);

解释说明:

  • 外层循环for (let i = 0; i < len - 1; i++) 控制排序的轮数,总共需要进行 len - 1 轮比较。
  • 内层循环for (let j = 0; j < len - 1 - i; j++) 每一轮比较时,比较的次数会逐渐减少,因为每一轮结束后,最大的元素会被放到正确的位置上。
  • 交换逻辑:如果当前元素大于下一个元素,则交换它们的位置,确保较大的元素逐步向数组末尾移动。
  • 时间复杂度:冒泡排序的时间复杂度为 O(n^2),其中 n 是数组的长度。

上一篇:js 字符串转blob

下一篇:js 多个数组合并

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组连接

js json数组

js 数组复制

js 复制数组

js 数组拷贝

js 对象数组合并

js 对象转数组

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站