1.冒泡排序
- 比力相邻的元素。假如第一个比第二个大,就互换他们两个。
- 对每一对相邻元素做同样的步调,从开始第一对到末了的末了一对。以是末了的元素应该会是最大的数。
- 对全部的元素重复步调,除了末了一个。
- 每次对越来越少的元素重复上面的步调,直到没有数字必要比力。
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 arr=temp } console.log(arr) |