JS数组冒泡排序

冒泡排序:车轮战,两两比较,小的靠前

特点:

  1、轮数:共比较了 length -1 次

  2、每轮中比较的次数:随着轮数的增加,次数反而减少

代码:

  双层循环表示整个排序的过程

  1、外层循环:控制比较的轮数,从1开始,到 length-1 (能取到)结束

  2、内层循环:控制每轮中比较的次数,并且也要表示参与比较元素的下标,从0开始到 length -1 -i (轮数变量)

练习:

对一组数据内的数据进行冒泡排序

function mao(){
                var arr = [1,99,58,6,3,7,6,102,66];
                console.log("排序前:"+arr);
                //外层循环
                for(var i=1;i<=arr.length-1;i++){
                    //内层循环
                    for(var j=0;j<=arr.length-1-i;j++){
                        //比较当前数字arr[j]与下一个数字arr[j+1]的大小关系,如果arr[J]大于arr[j+1]则互换位置
                        if(arr[j]>arr[j+1]){
                            arr[j] ^= arr[j+1];
                            arr[j+1] ^= arr[j];
                            arr[j] ^= arr[j+1];
                        }
                    }
                }
                console.log("排序后:"+arr);
            }

 运行结果:

 

posted @ 2020-10-03 11:48  you_rgb  阅读(535)  评论(0)    收藏  举报
//一下两个链接最好自己保存下来,再上传到自己的博客园的“文件”选项中