Map
자료형을 사용한다.Iterator
를 사용해 Map
을 순회하며 최빈값을 조회한다.function majorityElement(nums: number[]): number {
let majorNum = 0
let maxFrequency = 0
// 숫자와 빈도를 저장할 Map 생성
const map = new Map<number, number>()
for(const num of nums) {
map.set(num, (map.get(num) ?? 1) + 1)
}
let iter = map.entries()
while(true) {
const {value, done} = iter.next()
if(done) return majorNum
// Map을 순회하며 최빈값 탐색
const [key, val] = value
if(val > maxFrequency) {
majorNum = key
maxFrequency = val
}
}
};