Post

최빈값 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/120812

📔 문제 설명

최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.

💡 입출력 예

nresult
61
105
42

💻내가 작성한 코드

1
2
3
4
5
6
7
8
function solution(array) {
  const obj = {};
  array.map((a, i) => (obj[a] ? (obj[a] += 1) : (obj[a] = 1)));
  const maxNum = Math.max(...Object.values(obj));
  const modeNum = Object.keys(obj).filter((key) => obj[key] === maxNum);

  return modeNum.length > 1 ? -1 : +modeNum[0];
}
This post is licensed under CC BY 4.0 by the author.