数组冒泡排序算法02(精简版)

    /* 冒泡法排序 : sort()原理,  手写冒泡算法:曾经的面试必备技能
        核心原理 : 数组中相邻的元素比较大小,然后交换位置
    */

    /* 
    1.外层循环 :     pk轮数
        长度 5         PK4轮
        长度length    pk length-1轮
    */

    /* 
    2.内层循环 j :   每一轮pk次数
        i = 0  第一轮   length-1           找出最大数
        i = 1  第二轮   length-1-1         找出第二大数
        i = 2  第二轮   length-1-2
        i = i  第i轮   length-1-i          每过一轮,PK次数就减少一次
    */

    var arr = [10,88, 20, 100, 60, 50,90];//[20,50,60,80,100]

    //1.外层循环 : 比较轮数
    for (var i = 0; i < arr.length-1 ; i++) {// i = 0 1 2 3
        //2.内层循环 : 每一轮比较次数
        for (var j = 0; j < arr.length - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                //交换位置
                var temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            };
        };
    };

    console.log(arr);

猜你喜欢

转载自blog.csdn.net/cxy9999999/article/details/106450868