冒泡排序,几乎每个程序员都会的经典排序算法,每趟循环都找出最大的值。时间复杂度最好最坏均为O(n²)。所以冒泡适合用于数据量非常小的排序。
function sortBubble(arr) {
let flag = false;
for (let i = arr.length - 1; i > 0; i--) {
flag = false;
for (let j = 0; j < i; j++) {
if (arr[j] > arr[j + 1]) {
let tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
flag = true;
}
}
if (!flag) {
console.log("提前结束冒泡. i=" + i);
break;
}
}
}