문제
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.
제한사항
- 0 < array의 길이 < 100
- 0 ≤ array의 원소 < 1000
Solution.js
function solution(array) {
if(array.length === 1) return array[0];
const map = new Map();
for(const v of array) {
map.set(v, map.get(v)+1 || 1);
}
const arr = [...map].sort((a, b) => b[1] - a[1]);
if(arr.length === 1) return arr[0][0]
return arr[0][1] === arr[1][1] ? -1 : +arr[0][0];
}
출처 : 프로그래머스 코딩테스트 연습, https://school.programmers.co.kr/learn/courses/30/lessons/120812
'Algorithm > Programmers' 카테고리의 다른 글
(JS) [Programmers - 다음에 올 숫자] - 2023. 3. 7.(화) (0) | 2023.03.08 |
---|---|
(JS) [Programmers - OX퀴즈] - 2023. 3. 7.(화) (0) | 2023.03.07 |
(MYSQL) [Programmers - 역순 정렬하기] - 2023. 2.24.(금) (0) | 2023.02.24 |
(MYSQL) [Programmers - 아픈 동물 찾기] - 2023. 2.24.(금) (1) | 2023.02.24 |
(MYSQL) [Programmers - 어린 동물 찾기] - 2023. 2.24.(금) (0) | 2023.02.24 |