코테
LeetCode Top Interview 150 - 169. Majority Element
seo dori
2023. 8. 23. 20:25
입력한 배열에서 과반수이상을 차지하는 숫자를 찾는 문제
ex1)
Input: nums = [3,2,3]
Output: 3
의사 코드
하나의 객체를 만들어 숫자가 해당 배열에 몇개있는지를 저장한다
그리고 갯수가 제일 많은 숫자를 찾는다
/**
* @param {number[]} nums
* @return {number}
*/
var majorityElement = function(nums) {
const counter = new Map()
for(let i=0;i<nums.length;i++){
if(!counter.has(nums[i])){
counter.set(nums[i],1)
}else{
counter.set(nums[i],counter.get(nums[i])+1)
}
}
let maxValue = 0;
let maxKey =0
counter.forEach((value, key, map) => {
if(value>=maxValue){
maxValue=value
maxKey=key
}
});
return maxKey
};