728x90
# 문제
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
# 답안
// 1. 입력: array -> 정수 배열 [-1,2,3] 같은거
// 2. 출력: 중앙값
function solution(array) {
return array.sort((a, b) => a - b)[Math.floor(array.length / 2)];
}
# 인사이트
// 1. 오름차순으로 정렬하기 위해 sort를 사용한다.
// 2. 오름차순으로 정렬된 array에서 중앙값을 구해야한다.
// 3. 중앙값에 해당하는 index는 array의 길이에 나누기 2를 한 다음, 내림을 한 값과 같다.
ex. 길이가 7이면 7/2 하면 3.5 이고, 내림하면 3임. 인덱스 3인 값, 즉 배열에서 4번째 값에 해당하는 것.
// 4. 참고로, sort() 메서드를 호출한 후에 바로 대괄호([])를 사용하여 배열의 요소에 접근할 수 있다! (처음 알게 된 사실)
// 예컨대 array = [1,4,3,2,7,6,5] 이면, sort 사용해서 정렬하면 [1,2,3,4,5,6,7]이 되고,
// [1,2,3,4,5,6,7][3] 하면, 4가 반환된다.
728x90
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 31 - 짝수는 싫어요) (0) | 2024.02.02 |
---|---|
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 30 - 아이스 아메리카노) (0) | 2024.02.02 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 28 - 배열 두 배 만들기) → map, reduce, for, forEach, for...of 다 사용해보기 (0) | 2024.02.01 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 27 - 순서쌍의 개수) (0) | 2024.02.01 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 26 - 문자열 뒤집기) (0) | 2024.02.01 |