프로그래머스 코딩테스트 입문 Lv.0 중앙값 구하기 문제이다.
언어는 자바스크립트로 진행했다.

위 문제를 보면, 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값이다.
ex. 1, 2, 7, 10, 11이면 중앙값은 7이다.
array는 정수 배열이며, 제한사항은 위에 기재되어있다.
const solution = array => array.sort((a, b) => a - b)[Math.floor(array.length / 2)]
이렇게 바로 화살표 함수를 이용해서 변수 할당 없이 array 배열을 sort메서드를 이용해서 오름차순으로 정리하고,
배열의 길이를 반으로 나누고 Math.floor를 이용해서 소수값은 버리고 정수값만 가져온다.
array = [1, 2, 7, 10, 11] 일 때,
array.length / 2를 하면 배열의 길이가 5일 때, 2.5가 되고 Math.floor를 사용해서 2만 가져오는 것이다.
array 배열의 가운데는 7이고, array 배열의 2번째 요소는 7이다.
function solution(array) {
const center = Math.floor(array.length / 2)
const list = array.sort((a,b) => a-b)
return list[center]
}
또는 이렇게 general function에 array가 매개변수로 들어가 있고,
center 변수를 선언해서 Math.floor(array.length / 2)를 할당한다.
그리고 list 변수에 array를 오름차순으로 정리하는 sort메서드를 사용해서
list[center]를 반환하는 코드이다.
댓글