👏
100日アルゴリズム[19日目・多数派の要素]
解いた問題
解法
数と要素数のmapにする方法を思いつき、以下で解きました。
一番要素数が大きいものが多数派であるという前提で作ってしまっています。
function majorityElement(nums: number[]): number {
let scoresMap:Map<number, number> = new Map;
for(let i = 0; i < nums.length; i++) {
scoresMap.set(nums[i], (scoresMap.get(nums[i]) || 0)+1)
}
const maxElements = Math.max(...scoresMap.values());
const maxKey = Array.from(scoresMap).find(([key, value]) => value === maxElements);
return maxKey[0];
};
Discussion