※문제설명
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다.
예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
My Solution
function solution(array) {
// 1. 오름차순으로 정렬
// 1-1. sort 함수 정렬 후 오름차순으로 정렬
const sortedArray=array.sort(function(a,b){
return a - b;
});
// 2. 중앙값 순서 구하기
const centerNumber=Math.floor((sortedArray.length)/2);
return array[centerNumber]
}
Sort() : 배열을 정렬하기 위해서는 sort() 함수를 사용
더보기
sort()함수 사용
부족한 점 | 이번 문제는 조금 오래걸렸다. 내가 정답이라고 생각했는데 도무지 문제를 찾을 수 없었다. 그래서 주변 사람의 도움을 통해 문제를 해결했는데 내가 찾지 못한 문제는 sort() 함수에 대한 정보였다. 당연히 올바르게 정렬해줄 거라고 생각했던 함수가 국어식 배열이라는 것 알게 되었다. 내 머릿속과 컴퓨터의 두뇌는 정말 다르다는 것을 깨닫게 됐다. |
개선 방안 | 내가 알지 못한 부분들은 정말 많이 접해봐야 알 수 있을 것 같다. 그리고 문제가 뭔지 찾지 못했던 것은 내가 모든 것이 당연하다고 생각을 해서 오랫동안 그 문제를 찾지 못했던 것 같다. 예외적인 상황이 무엇이 있는지 생소하게 쓰는 함수들은 어떤 특징을 가지고 있는 지 조금 더 자세한 자료조사를 통해서 예외적인 상황을 찾을 수 있는 자세를 가져야겠다. |
Different Approach
function solution(array) {
return array.sort((a, b) => a - b)[Math.floor(array.length / 2)];
}
참고 블로그 : https://sakuraop.tistory.com/293
https://hianna.tistory.com/409
'프론트엔드로 가는 길 > 프로그래머스' 카테고리의 다른 글
14. 프로그래머스_최빈값구하기 (0) | 2023.01.10 |
---|---|
08. react_blog(test) (0) | 2022.12.28 |
12. 배열 두배 만들기(push, reduce, map) (0) | 2022.11.23 |
12. 분수의 덧셈(while문) (1) | 2022.11.21 |
11. 머쓱이보다 키 큰 사람 (0) | 2022.11.08 |