// 冒泡排序原理:
// 把第一项a和后一项b进行比较,如果a比b大,那么把第一项后移,第二项前移。
// 也就是把第一项变成b,把第二项变成a,依次循环,把每一项都执行一遍。
let arr = [1, 2, 4, 8, 5, 10, 9, 7, 6];
// 减1是为了最后一项不用再和后面的进行比较了,减去j也是不用对当前j进行循环
let isOk = true;
for (let j = 0; j < arr.length -1; j ++) {
for (let i = 0; i < arr.length - 1 - j; i ++) {
let a = arr[i];
let b = arr[i + 1];
if (a > b) {
arr[i] = b;
arr[i + 1] = a;
isOk = false;
}
if (isOk) { // 如果已经排好,就不继续循环排序
break;
}
}
}
来源:https://www.cnblogs.com/yxfboke/p/12389425.html