冒泡排序
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
// 有一个数组 数组中都是数值 请从小到大排序
var arr = [10, 189, 999, 20, 14, 6, 88, 190, 54];
// => [6, 10, 14, 20, 54, 88, 190]
// 思路:
// 循环两两比较 如果第一个数比第二个数大 就换位置 否则不换
// 循环这么一次 已经将最大的数放到了最后
// 注: arr.length - 1 是因为一次循环要使用两个值 当前值 和下一个值 所以为了保证最后一次有两个值 所以要-1
// 循环一次能够确定一个最大的数
for (var j = 0; j < arr.length - 1; j++) {
for (var i = 0; i < arr.length - 1 - j; i++) {
console.log("第" + i + "次循环", arr[i], arr[i + 1]);
if (arr[i] < arr[i + 1]) {
// 换位置
var temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
}
console.log(arr);
</script>
</body>
</html>