🌊 [javascript] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 쀑앙값 κ΅¬ν•˜κΈ°

μ˜€μ€λΉ„Β·2023λ…„ 3μ›” 3일
0

ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€

λͺ©λ‘ 보기
1/1
post-thumbnail

πŸ’‘ 쀑앙값 κ΅¬ν•˜κΈ° - Lv. 0


🧑 문제 μ„€λͺ…

쀑앙값은 μ–΄λ–€ 주어진 값듀을 크기의 μˆœμ„œλŒ€λ‘œ μ •λ ¬ν–ˆμ„ λ•Œ κ°€μž₯ 쀑앙에 μœ„μΉ˜ν•˜λŠ” 값을 μ˜λ―Έν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 1, 2, 7, 10, 11의 쀑앙값은 7μž…λ‹ˆλ‹€. μ •μˆ˜ λ°°μ—΄ arrayκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, 쀑앙값을 return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄λ³΄μ„Έμš”.

πŸ’› μ œν•œμ‚¬ν•­

  • array의 κΈΈμ΄λŠ” ν™€μˆ˜μž…λ‹ˆλ‹€.
  • 0 < array의 길이 < 100
  • -1,000 < array의 μ›μ†Œ < 1,000

πŸ’š μž…μΆœλ ₯ 예

arrayresult
[1, 2, 7, 10, 11]7
[9, -1, 0]0

πŸ’™ μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예 #1

  • λ³Έλ¬Έκ³Ό λ™μΌν•©λ‹ˆλ‹€.

μž…μΆœλ ₯ 예 #2

  • 9, -1, 0을 μ˜€λ¦„μ°¨μˆœ μ •λ ¬ν•˜λ©΄ -1, 0, 9이고 κ°€μž₯ 쀑앙에 μœ„μΉ˜ν•˜λŠ” 값은 0μž…λ‹ˆλ‹€.

πŸ’œ λ‚˜μ˜ 풀이

function solution(array) {
    // sortλ₯Ό μ‚¬μš©ν•˜μ—¬ 배열을 μˆœμ„œλŒ€λ‘œ μ •λ ¬ ν•œλ‹€. 
    // sort만 μ΄μš©ν•˜λ©΄ 1, 10, 3, ...으둜 좜λ ₯될 수 μžˆμœΌλ‹ˆ 
    // .sort(function(a,b){return a-b;} )λ₯Ό μ‚¬μš©ν•œλ‹€.
    // μΈλ±μŠ€λŠ” 0λΆ€ν„° μ„ΈκΈ° λ•Œλ¬Έμ— λ°°μ—΄μ˜ 길이 / 2λ₯Ό λ‚΄λ¦Όμ°¨μˆœ ν•˜λ©΄ 쀑앙값이 λ˜λ―€λ‘œ
    // Math.floor(array.length/2)λ₯Ό μ‚¬μš©ν•œλ‹€.
    let answer = 0;
    array.sort(function(a, b){
        return a - b
    });
    return answer = array[Math.floor(array.length/2)]
}

🀎 λ‹€λ₯Έμ‚¬λžŒμ˜ 풀이


function solution(array) {
  return array.sort((a, b) => a - b)[Math.floor(array.length / 2)];
}

🀍 μ•Œμ•„λ³΄κΈ°

.sort((a, b) => a - b)의 원리

sort의 μ•Œκ³ λ¦¬μ¦˜μ€ 2개의 인자λ₯Ό λΊ„μ…ˆν•˜μ—¬ μ–‘μˆ˜ 값을 μ „λ‹¬λ°›μœΌλ©΄ λ°°μ—΄μ˜ μˆœμ„œλ₯Ό κ΅μ²΄ν•˜κ³ ,
음수 값을 전달 λ°›μœΌλ©΄ μˆœμ„œλ₯Ό μœ μ§€ν•˜κ³  μ΅œμ’…μ μœΌλ‘œ 배열이 μ˜€λ¦„μ°¨μˆœμœΌλ‘œ λ³€κ²½λœλ‹€.

μ˜€λ¦„μ°¨μˆœ : .sort((a, b) => a - b)
λ‚΄λ¦Όμ°¨μˆœ : .sort((a, b) => b - a)
자주 μ“°κ²Œ λ ν…Œλ‹ˆ κΈ°μ–΅ν•΄λ‘˜ 것.

좜처 : https://noirstar.tistory.com/359
μ›μΆœμ²˜ : https://opentutorials.org/course/50/109


πŸ–€ λŠλ‚€μ 

ν™”μ‚΄ν‘œ ν•¨μˆ˜ μ‚¬μš©μ— 뢀담을 λŠλΌμ§€ 말자.
μ‰¬μš΄ 것도 ν‘ΈλŠ”λ° ν•œμ°Έ κ±Έλ Έλ‹€. λ¨Έλ¦Ώ 속이 λ³΅μž‘ν•œλ° 차뢄함을 μœ μ§€ν•  것.

profile
λ“œλ¦Όμ˜€κ΅¬

2개의 λŒ“κΈ€

comment-user-thumbnail
2023λ…„ 3μ›” 5일

sort λ©”μ†Œλ“œλ₯Ό μ΅νžˆμ…¨κ΅°μš”!!

1개의 λ‹΅κΈ€

κ΄€λ ¨ μ±„μš© 정보