什么是冒泡排序

204 阅读1分钟

冒泡排序

冒泡排序:是一种算法,把一系列的数据按照一定的顺序进行排列显示(从小到大或从大到小)。 例如,我们可以将数组 [5, 4, 3, 2, 1]中的元素按照从小到大的顺序排序,输出: 1,2,3,4,5


        // 冒泡排序
        // var arr = [5, 4, 3, 2, 1];
        var arr = [4, 1, 2, 3, 5];
        for (var i = 0; i <= arr.length - 1; i++) { // 外层循环管趟数 
            for (var j = 0; j <= arr.length - i - 1; j++) { // 里面的循环管 每一趟的交换次数
                // 内部交换2个变量的值 前一个和后面一个数组元素相比较
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
​
            }
        }
        console.log(arr);
​
//简单来说:数组长度为5,外层for循环决定趟数,所以根据手写的算法 要进行数组长度减1(arr.length-1),内层for循环决定每趟交换的次数,同样根据手写算法 要进行 数组长度 减去 索引号i 再减1(arr.length-i-1)

Snipaste_2022-03-20_19-19-36.png