人生与戏

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

方法一:

  利用for 和 if-else

<script type="text/javascript">
        var arr = [32,4,67,82,21,11];
            
        ///轮数
        for(var i = 0; i<arr.length-1;i++){
            //次数
            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);

        //冒泡排序
        
        //给出一个数组
        var newArr = [1,3,6,4,8,5];
        //for遍历
        //将最小的数一步一步往前移
        for(var i = 0; i<newArr.length-1;i++){
            //相邻两个之间换位置
            for(var j = 0;j<newArr.length-1;j++){  //这里和上面一样的地方不同在于没有 - i .
                //判断前一个大于后一个数时进行交换
                if(newArr[j] > newArr[j+1]){
                    //借助第三方变量交换两个变量的值
                    var temp = newArr[j];
                    newArr[j] = newArr[j+1];
                    newArr[j+1] = temp;
                }
            }
        }
        console.log(newArr);

</script>

方法二:

  利用 sort()方法

<script type="text/javascript">
    //1.给出一个数组
    var arr = [3,5,1,7,99,8];
    //2.创建一个排序函数
    //若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
    //若 a 等于 b,则返回 0。
    //若 a 大于 b,则返回一个大于 0 的值。
    function sortNumber(a, b){
        return a - b
    }
    console.log(arr.sort(sortNumber));
</script>

 

posted on 2018-10-27 22:39  人生与戏  阅读(247)  评论(0编辑  收藏  举报