冒泡排序与随机排序

2022-08-27  本文已影响0人  璃安_

1.冒泡排序

  1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
  2. 对每一对相邻元素做同样的步骤,从开始第一对到结尾的最后一对。所以最后的元素应该会是最大的数。
  3. 对所有的元素重复步骤,除了最后一个。
  4. 每次对越来越少的元素重复上面的步骤,直到没有数字需要比较。
   var arr = [5, 4, 3, 2, 1]
        for (var i = 0; i < arr.length - 1; i++) {//外层循环控制循环的趟数
            for (var j = 0; j < arr.length - 1; j++) {//内层循环控制着次数
                if (arr[j] > arr[j + 1]) { 
                    //给一个临时的变量 来存放
                    var san = arr[j] 
                    arr[j] = arr[j + 1]
                    arr[j + 1] = san
                }
            }
        }
        console.log(arr)

2.随机排序-洗牌排序

1.)数组sort方法进行排序

1.sort 方法是对数组元素进行排序,默认排序顺序是先将元素转换为字符串,然后再进行排序
2.每次刷新都会得到一个新的数组

//1.sort方法
var arr = [5, 4, 3, 2, 1]
arr.sort(function(a,b){
     return Math.random()-0.5//通过随机产生0到1的数,然后判断是否大于0.5从而影响排序
   })
   console.log(arr)
2.)遍历数组进行排序
//2. 遍历数组
for(var i=0;i<arr.length;i++){
     var rd=Math.floor(Math.random()*arr.length)
     console.log(rd)
     var temp=arr[rd]
     arr[rd]=arr[i]
     arr[i]=temp
   }
    console.log(arr)
上一篇下一篇

猜你喜欢

热点阅读