在给定的数组中,找到出现次数最多的数字。
出现次数相同时,返回数值最小的数字。
解题思路
1.定义一个对象,在遍历数组的时候,将数组元素作为对象的键,将出现的次数作为值。
2.定义一个最大值,跟次数对比即可得到结果。
通过以上的思想,我们可以得到以下实现代码。
findNumber(arr) { let result = {} let max = 0 let m for (let i = 0; i < array.length; i++) { if (!result[array[i]]) { result[array[i]] = 1 } else { result[array[i]]++ } if (max < result[array[i]]) { max = result[array[i]] m = array[i] }else if(max===result[array[i]]){ if(m>array[i]){ m = array[i] } } } return m } }