JS——冒泡排序
核心思想:
1、外层for循环控制比较的轮数
2、内层for循环控制每轮比较的次数
3、外层每进行一轮比较,内层就少一次比较,因为外层每进行一轮比较都会产生一个最大值
<script>
var arr = [1, 2, 3, 4, 5, 6, 7];
var temp = 0;
var n = 0;
var y = 0;
for (var i = 0; i < arr.length - 1; i++) {
var bool = true;
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] < arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
bool = false;
n++;
}
}
y++;
if (bool) {
break;
}
}
console.log(n + "====" + y);//21====6
console.log(arr);//[7, 6, 5, 4, 3, 2, 1]
</script>

浙公网安备 33010602011771号