중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
array | result |
---|---|
[1, 2, 7, 10, 11] | 7 |
[9, -1, 0] | 0 |
본문과 동일합니다.
9, -1, 0을 오름차순 정렬하면 -1, 0, 9이고 가장 중앙에 위치하는 값은 0입니다.
function solution(array) {
array.sort((a, b) => {
return a - b;
});
return array[Math.floor(array.length / 2)];
}
처음에 sort()를 array.sort()
로 사용해서 자꾸 틀렸다.
알고보니 javascript에서 sort()는 ASCII 코드 값 기준으로 정렬을 해주기 때문에..
40과 5가 있으면 40을 작은 숫자로 판단하더라..
정수에서 sort() 쓸 때는 꼭 조건을 주어야 하겠다.
import java.util.*;
class Solution {
public int solution(int[] array) {
Arrays.sort(array);
return array[array.length / 2];
}
}
역시 Java는 그냥 sort()를 사용해도 된다!