冒泡排序理解

77 阅读1分钟
        var newarr = [
                9, 6, 4, 5, 3, 6, 6
        ]
			

处理思路,双层for循环。 先建立一个外部循环为总比较次数 再写一个内循环为两两比较的次数

        for(let i = 0; i<newarr.length; i++) {
                for(let k = 0; k<newarr.length -1 ; k++) {
                        let arr = [];
                        if(newarr[k] > newarr[k+1]) {
//在循环体里面,起一个‘假想空间’ 声明Arr,内循环从左至右
                                arr = newarr[k];
//把更‘大’的暂放‘假想空间’,
                                newarr[k] = newarr[k+1];
//把更‘小’的和之前作对比的左右换位
                                newarr[k+1] = arr
//把‘假想空间存储的更大的’放在最右侧
                        }
                }
//经过arr.length-1次循环 数组中的元素按照从小到大的顺序排列
        }
        console.log('newarr :>> ', newarr);

[(www.lucklnk.com/uploadfiles…)] 动态理解图