经历了昨天中等难度题目的考验后,今天大脑要歇一歇,于是就选了一题比较容易的,也或者说是昨天题目的简化版本,
如题:
输入一个数组,并找出数组中出现频率最大的那个数。而且不像昨天那题那样有时间复杂度的限制,不过自己的方法还是跟题目 347. Top K Frequent Elements 类似,
权当是复习一遍知识点了。
1 /** 2 * @param {number[]} nums 3 * @return {number} 4 */ 5 var majorityElement = function(nums) { 6 let myMap = new Map(); 7 let res = new Array(); 8 9 for(let i = 0 ; i < nums.length ; i++){ 10 if(myMap.get(nums[i])){ 11 myMap.set(nums[i], myMap.get(nums[i]) + 1); 12 }else{ 13 myMap.set(nums[i], 1); 14 } 15 } 16 17 res = Array.from(myMap); 18 19 res.sort((a,b) => (b[1]-a[1])); 20 21 return res[0][0]; 22 };
OK,今天的比较轻松愉快。