
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
var arr = [4,2,5,7,8,2,1]
console.log(arr)
// 用冒泡排序从小到大
// 总共有arr.length个数,每一趟都能确定一个最大值,
// 但是最后一个不需要比较
// 所以总共要比较arr.length-1趟 0 ~ length-2
// 5 4 0~3
for (var i = 0; i < arr.length - 1; i++) {
// 当前第i趟要比较的次数
// arr.length i 比较次数
// 5 0 4
// 5 1 3
// 5 2 2
// arr.length i arr.length - i - 1
for (var j = 0; j < arr.length - i - 1; j++) {
// 相邻的两个数来比较 arr[j]和arr[j+1]
if (arr[j] > arr[j+1]) {
// 交换
var temp = arr[j]
arr[j] = arr[j+1]
arr[j+1] = temp
}
}
}
console.log(arr)
</script>
</body>
</html>
本文详细介绍了冒泡排序算法的实现过程,通过JavaScript代码演示了如何将一个整数数组从小到大进行排序。代码中使用了双重循环,外层循环控制排序趟数,内层循环负责比较并交换元素,确保每趟都能将最大值移到正确位置。
435

被折叠的 条评论
为什么被折叠?



