一个网站建设10万元,人力外包,中国制造网外贸网登录,黄骅市做网站大家都知道javascript的数组有sort排序方法,可以实现升序与降序#xff0c;现在我们来学习一下sort方法排序的原理冒泡排序。冒泡排序:拿数组的当前项和后一项比较#xff0c;如果当前项大于后一项#xff0c;两者交换位置。 1 let arr [100, 34, 16, 3, 18, 70];2 3 for …大家都知道javascript的数组有sort排序方法,可以实现升序与降序现在我们来学习一下sort方法排序的原理冒泡排序。冒泡排序:拿数组的当前项和后一项比较如果当前项大于后一项两者交换位置。 1 let arr [100, 34, 16, 3, 18, 70];2 3 for (var i 1; i ary.length; i) {4 5 for (var j 0; j ary.length - i; j) {6 7 if (ary[j] ary[j 1]) {8 9 [ary[j], ary[j 1]] [ary[j 1], ary[j]]
10
11 }
12
13 }
14
15 } 第一层循环确定循环轮数第二层循环当前项与后一项进行比较如果当前项大于后一项就进行位置的互换上面使用的是ES6的方法实现位置的互换。 1 //第一轮 i1;2 //j0 arr[j]arr[j1] arr[0]arr[1] 10034 交换位置 [34,100,16,3,18,70];3 //j1 arr[j]arr[j1] arr[1]arr[2] 10016 交换位置 [34,16,100,3,18,70];4 //j2 arr[j]arr[j1] arr[2]arr[3] 1003 交换位置 [34,16,3,100,18,70];5 //j3 arr[j]arr[j1] arr[3]arr[4] 10018 交换位置 [34,16,3,18,100,70];6 //j4 arr[j]arr[j1] arr[4]arr[5] 10070 交换位置 [34,16,3,18,70,100,];7 //j5 arr.length-i8 9 //第二轮 i2; [34,16,3,18,70,100,];
10 //j0 arr[j]arr[j1] arr[0]arr[1] 3416 交换位置 [16,34,3,18,70,100,];
11 //j1 arr[j]arr[j1] arr[1]arr[2] 343 交换位置 [16,3,34,18,70,100,];
12 //j2 arr[j]arr[j1] arr[2]arr[3] 3418 交换位置 [16,3,18,34,70,100,];
13 //j3 arr[j]arr[j1] arr[3]arr[4] 3470 不交换位置 [16,3,18,34,70,100,];
14 //j4
15
16 //第三轮 i3; [16,3,18,34,70,100,];
17 //j0 arr[j]arr[j1] arr[0]arr[1] 163 交换位置 [3,16,18,34,70,100,];
18 //j1 arr[j]arr[j1] arr[1]arr[2] 1618 不交换位置 [3,16,18,34,70,100,];
19 //j2 arr[j]arr[j1] arr[2]arr[3] 1834 不交换位置 [3,16,18,34,70,100,]; 转载于:https://www.cnblogs.com/youngGao/p/8974325.html