冒泡排序

冒泡排序理论
1、双重for循环
2、指定比较次数和轮数
    a) 比较轮数,数组长度-1
    b)比较次数,数组长度-1
3、判断是否符合标准
4、交换比较值得位置
    //需求:冒泡排序
    //理论:1、比较轮数n-1  2、比较次数n-1  3、符合某条件交换位置
    //核心:双重for循环
    //步骤:1、双重for循环  2、指定轮数和次数  3、判断是否符合标准,如果符合标准交换位置
    var arr=[1,2,3,4,5,6,7];
    //每轮比较后,下一轮少比较一次(每轮都会比较出一个最大值,然后一轮没有比较的必要了)
    var n=0; //36
    var m=0;//6
    console.log(arr);
    //1、双重for循环(外循环控制轮数)
    for(var i=0; i<arr.length-1; i++){
        //1、指定轮数和次数(内循环控制次数)
        for(var j=0; j<arr.length-1-i; j++){ //减I 每轮都扫比较一次
                //判断是否符合标准,如果符合标准交换位置
                    //从小到大排序。如果前面的比后面的大,交换位置
            if(arr[j]<arr[j+1]){
                var temp=arr[j]; //把一开始的值保存起来,为了方便交换
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
            m++
        }
        n++
    }
    console.log(arr);
    console.log(m);
    console.log(n);
原文地址:https://www.cnblogs.com/wdz1/p/7235801.html