<script>
var arr = [10, 9, 8, 7];
// 外层循环控制比较轮次
for (var j = 0; j < arr.length - 1; j++) {
// 内层循环控制每轮的比较次数
for (var i = 0; i < arr.length - 1 - j; i++) {
if (arr[i] > arr[i + 1]) {
var tmp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = tmp;
}
console.log(j + '下标' + arr);
}
console.log(arr);
// 第一轮的执行顺序 j=0 arr.length -1 -j =3;
// i = 0 i<3 arr[0]>arr[1] 9 10 8 7 i++;
// i = 1 i<3 arr[1]>arr[2] 9 8 10 7 i++;
// i = 2 i<3 arr[2]>arr[3] 9 8 7 10 i++;
// i = 3
// 第二轮的执行顺序 [9 8 7 10] j=1 arr.length -1 -j =2;
// i = 0 i<2 arr[0]>arr[1] 8 9 7 10 i++;
// i = 1 i<2 arr[1]>arr[2] 8 7 9 10 i++;
// 第三轮的执行顺序 [ 8 7 9 10 ] j=2 arr.length -1 -j =1;
// i = 0 i<1 arr[0]>arr[1] 7 8 9 10 i++;
// j=3;
}
</script>
js冒泡排序。
最新推荐文章于 2024-07-24 20:02:07 发布