πŸ’› JavaScript/λ°±μ€€

[JS] 2750 - Bubble sort, Selection sort

Jayden1116 2022. 6. 15. 21:49
const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : './data.txt';

const input = fs
  .readFileSync(path)
  .toString()
  .trim()
  .split('\n')
  .map((x) => parseInt(x));
const count = input.shift();

const solveBubble = (input) => {
  for (let i = input.length - 1; i > 0; i--) {
    for (let j = 0; j < i; j++) {
      if (input[j] > input[j + 1]) {
        let temp = input[j + 1];
        input[j + 1] = input[j];
        input[j] = temp;
      }
    }
  }
  return input;
};

// console.log(solveBubble(input));

const solveSelection = (input) => {
  for (let i = 0; i < input.length - 1; i++) {
    let indexMin = i;
    for (let j = i; j < input.length; j++) {
      if (input[j] < input[indexMin]) {
        indexMin = j;
      }
    }
    let temp = input[i];
    input[i] = input[indexMin];
    input[indexMin] = temp;
  }
  return input;
};

// console.log(solveSelection(input));

 

λ°±μ€€

 

2750번: 수 μ •λ ¬ν•˜κΈ°

첫째 쀄에 수의 개수 N(1 ≤ N ≤ 1,000)이 μ£Όμ–΄μ§„λ‹€. λ‘˜μ§Έ 쀄뢀터 N개의 μ€„μ—λŠ” 수 μ£Όμ–΄μ§„λ‹€. 이 μˆ˜λŠ” μ ˆλŒ“κ°’μ΄ 1,000보닀 μž‘κ±°λ‚˜ 같은 μ •μˆ˜μ΄λ‹€. μˆ˜λŠ” μ€‘λ³΅λ˜μ§€ μ•ŠλŠ”λ‹€.

www.acmicpc.net

 

μ–΄μ˜ˆ

 

버블정렬, 선택정렬 κ΅¬ν˜„ μ™„λ£Œ! μ‹œκ°„λ³΅μž‘λ„λŠ” O(n^2)둜 ꡉμž₯히 느린 μ•„μ΄λ“€μ΄μ§€λ§Œ!

κ΅¬ν˜„ν•˜λŠ” 것에 의의λ₯Ό κ°–μž!

λ‹€μŒμ—” μ‚½μž…μ •λ ¬μ„ κ΅¬ν˜„ν•΄λ³Ό μ˜ˆμ •!