冒泡排序
# 冒泡排序
# 冒泡排序怎么排?
遍历数组,从第一个数开始,每次都和后一个数比较,如果比后面的大,则交换,否则不动,一轮下来,最后的数一定是最大的。
然后开始第二轮,但是这次不用比较最后一个数了,因为它已经是最大的了。
照此类推,直到比完。
(如果从第二个数开始比较,那就是和它前一个数比)
// 编写方法,实现冒泡
var arr = [29,45,51,68,72,97];
//外层循环,控制趟数,每一次找到一个最大值
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);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18