ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฌธ์ œ

N๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฒ„๋ธ”์ •๋ ฌ์ž…๋‹ˆ๋‹ค.

 

๋ฌธ์ œํ’€์ด

๋ฒ„๋ธ” ์ •๋ ฌ(Bubble Sort)

  • ์„œ๋กœ ์ธ์ ‘ํ•œ ๋‘ ์›์†Œ๋ฅผ ๊ฒ€์‚ฌํ•˜์—ฌ ์ •๋ ฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ์ธ์ ‘ํ•œ 2๊ฐœ์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋น„๊ตํ•˜์—ฌ ํฌ๊ธฐ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ์„œ๋กœ ๊ตํ™˜
  • ์„ ํƒ ์ •๋ ฌ๊ณผ ๊ธฐ๋ณธ ๊ฐœ๋…์ด ์œ ์‚ฌ
  • ์ฒซ ๋ฒˆ์งธ ์ž๋ฃŒ์™€ ๋‘ ๋ฒˆ์งธ ์ž๋ฃŒ๋ฅผ, ๋‘ ๋ฒˆ์งธ ์ž๋ฃŒ์™€ ์„ธ ๋ฒˆ์งธ ์ž๋ฃŒ๋ฅผ, (๋งˆ์ง€๋ง‰ - 1)๋ฒˆ์งธ ์ž๋ฃŒ์™€ ๋งˆ์ง€๋ง‰ ์ž๋ฃŒ๋ฅผ ๋น„๊ต ๋ฐ ๊ตํ™˜ํ•˜์—ฌ ์ •๋ ฌ
  • 1ํšŒ ์ˆœํšŒ๋ฅผ ๋งˆ์น˜๋ฉด ๊ฐ€์žฅ ํฐ ์ž๋ฃŒ๊ฐ€ ๋งจ ๋’ค๋กœ ์ด๋™ํ•˜๋ฏ€๋กœ 2ํšŒ์ „์—์„œ๋Š” ๋งจ ๋์— ์žˆ๋Š” ์ž๋ฃŒ๋Š” ์ •๋ ฌ์—์„œ ์ œ์™ธ

์ฝ”๋“œ

function solution(...arr) {
  let answer = arr;

  for(let i = 0; i < arr.length - 1; i++) { ๋งˆ์ง€๋ง‰ ๋‘ ์ธ๋ฑ์Šค ์š”์†Œ๋ฅผ ๋น„๊ต ํ›„์— ๋‚˜๋จธ์ง€ ํ•˜๋‚˜๋งŒ ๋‚จ๊ธฐ ๋•Œ๋ฌธ์— ๋˜ ์ˆœํšŒํ•  ํ•„์š” ์—†์Œ
    for(let j = 0; j < (arr.length - i - 1); j++) { //1ํšŒ ์ˆœํšŒ๋ฅผ ๋งˆ์น  ๊ฒฝ์šฐ ๋‹ค์Œ์—๋Š” ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ์š”์†Œ๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ˆœํšŒ
      if(arr[j] > arr[j + 1]) {
        [arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
      }
    }
  }
  
  return answer;
}

console.log(solution(13, 5, 11, 7, 23, 15));
๋Œ“๊ธ€
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
TAG
more
ยซ   2025/01   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
๊ธ€ ๋ณด๊ด€ํ•จ