冒泡排序

100 阅读1分钟

冒泡排序

冒泡排序:

​ 例如:arr = [5, 3, 4, 2, 1]

1、第一轮比较的次数为:4

2、第二轮比较的次数为:3

3、第三轮比较的次数为:2

4、第四轮比较的次数为:1

此时, arr = [5, 3, 4, 2, 1] ==》 arr = [1, 2, 3, 4, 5]

因此,可以确认外层循环的次数为:arr.length-1,外层循环的次数为:arr.length-i

 let arr = [5, 3, 4, 2, 1]
            // 元素排序的层数
        for (let i = 0; i < arr.length - 1; i++) {
            // 元素相比较的次数
            for (let j = 0; j <arr.length - i; j++) {
                // 两个元素进行比较
                if (arr[j] > arr[j + 1]) {
                    // 交换元素
                    let temp= arr[j]
                    arr[j] = arr[j + 1]
                    arr[j + 1] = temp
                }
            }
        }
        console.log(arr);