js中的冒泡排序

67 阅读1分钟

1.原理:比较两个相邻的元素,将值大的元素交换到右边

2.思路:依次比较相邻的两个数,将比较小的数放在前面,比较大的数放在后面。

// 首先我们定义一个数组
let arr = [2, 6, 5, 4, 9, 2, 6, 7, 5, 3, 5, 1, 25, 52, 15, 34, 95, 102, 623, 68]
// 定义冒泡排序函数
function sort(arr) {
   // 定义中间量
    let temp = -Infinity
    //外层for循环控制循环次数
    for (let i = 0; i < arr.length; i++) {
        // 内层for循环进行对比
        for(let j = 0; j < arr.length-i-1; j++){
            //如果数组第一项大于第二项
            if (arr[j] > arr[j + 1]) {
                //把数组第一项赋值给中间量
                temp = arr[j]
                //把数组第二项赋值给数组第一项
                arr[j] = arr[j + 1]
                //把中间量赋值给数组第二项
                arr[j + 1] = temp
            }
         }
    } 
}  
// 执行排序函数
sort(arr)