# 题目描述

实现冒泡排序

  • 从小到大排序
  • 从大到小排序

# 代码实现

从小到大排序


var __readline = require("readline-sync");
__readline.setDefaultOptions({prompt:""});
var readline = __readline.prompt;


console.log("请输入arr: ");
const arr = readline().split(" ").map(Number);


function bubbleSort(arr){
  for(let j = arr.length - 1; j >= 0; j --){
      for(let i = 0; i < j; i ++){
          if(arr[i] > arr[i + 1]){
              [arr[i], arr[i + 1]] = [arr[i + 1], arr[i]];
          }
      }
  }
}

bubbleSort(arr);
console.log("排序后的结果为: ", arr);


/* 
  请输入arr:
  4 5 1 6 2 7 3 3 2
  排序后的结果为:  [
    1, 2, 2, 3, 3,
    4, 5, 6, 7
  ]
*/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

从大到小排序

var __readline = require("readline-sync");
__readline.setDefaultOptions({ prompt: "" });
var readline = __readline.prompt;

console.log("请输入arr: ");
const arr = readline().split(" ").map(Number);

function bubbleSort(arr) {
  for (let j = arr.length - 1; j >= 0; j--) {
    for (let i = 0; i < j; i++) {
      if (arr[i] < arr[i + 1]) {
        [arr[i], arr[i + 1]] = [arr[i + 1], arr[i]];
      }
    }
  }
}

bubbleSort(arr);
console.log("排序后的结果为: ", arr);

/* 
  请输入arr:
  4 5 1 6 2 7 3 3 2
  排序后的结果为:  [
    7, 6, 5, 4, 3,
    3, 2, 2, 1
  ]
*/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29