중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array
가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
array
의 길이는 홀수입니다.array
의 길이 < 100array
의 원소 < 1,000array | result |
---|---|
[1, 2, 7, 10, 11] | 7 |
[9, -1, 0] | 0 |
입출력 예 #1
입출력 예 #2
💡 문제풀이 과정
- 먼저, 배열의 값들을 크기의 순서대로 정렬해야 하므로
sort()
를 사용하여 오름 차순으로 정렬한다.- 만약 배열의 길이가 3인 경우 인덱스는 0부터 시작하므로 [0, 1, 2]이고, 인덱스 1이 중앙값이 된다. 따라서
배열의 길이 / 2
를 하게되면3 / 2 = 1.5
가 나오는데 소수점을 버리고 정수만 가져와야 하므로,Math.floor()
나Math.trunc()
혹은parseInt()
를 사용하면 되겠다.
function solution(array) {
array.sort((a, b) => a - b);
return array[Math.floor(array.length / 2)];
// return array[Math.trunc(array.length / 2)];
// return array[parseInt(array.length / 2)];
}