그래도 해야지. 어떡해

[JavaScript] 중앙값 구하기 본문

개발일지/JavaScript

[JavaScript] 중앙값 구하기

정원의쓸모 2023. 4. 20. 14:17
문제설명
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열  array 가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.

 

  •  sort( ) 메서드는 배열의 요소를 정렬한 후 그 배열을 반환
  • 기본 정렬 순서는 유니코드 순으로 배열이 정렬된다.
const arr = [1, 2, 7, 3, 10, 11] 
      arr.sort()  // [1, 10, 11, 2, 3, 7] -- 엥?

 

크기 순으로 정렬하려면?

🛠 compareFunction


: 정렬 순서를 정의하는 함수

  • 반환 값 < 0 : a가 b보다 앞에 있어야 한다.
  • 반환 값 < 0 : a와 b의 순서를 바꾸지 않는다.
  • 반환 값 > 0 : b가 a보다 앞에 있어야 한다.
const arr = [1, 2, 7, 3, 10, 11] 

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

console.log(solution(arr)) // 7

 

 

 


참고문서
Array.prototype.sort() - JavaScript MDN Mozilla

 

Comments