微信公衆號: 醉前端
關注可瞭解更多題目及解題技巧。問題或建議,請公衆號留言;
給定一個數組,找出數組中出現次數最多的元素。
示例 1:
給定數組 nums = [3,1,2,1,3,4,3,5,3,6,3],
函數應該返回: 次數最多的元素爲:3, 次數爲:5前端
const findMost = arr => { let hash = {}; let maxNum = 0; let maxEle = null; for (var i = 0; i < arr.length; i++) { hash[arr[i]] === undefined ? hash[arr[i]] = 1 : hash[arr[i]]++; if (hash[arr[i]] > maxNum) { maxEle = arr[i]; maxNum = hash[arr[i]]; } } return `次數最多的元素爲:${maxEle}, 次數爲:${maxNum}`; }
const findMost = arr => { let maxEle; let maxNum = 1; let obj = arr.reduce((p, item) => { p[item] ? p[item]++ : p[item] = 1; if(p[item] > maxNum){ maxEle = item; maxNum++; } return p; }, {}); return `出現次數最多的元素爲:${maxEle},出現次數爲:${maxNum}`; }
每日更新一道算法題,加個關注唄老鐵!
![]()