题解 | #高频数据类型#

高频数据类型

https://www.nowcoder.com/practice/687425f78096428baa58fbdcf024244a

let obj = {},
  result = [],
  num = 0;

array.map(item => {
  let type = typeof (item);

  obj[type] = (obj[type] || 0) + 1

  num = Math.max(obj[type], num)
})

for (let key in obj) {
  result = obj[key] == num ? [...result, key] : result
}

return [...result, num]

代码并不复杂,原理是【对象key的唯一性

将类型值作为对象的key,然后将出现的次数作为对象的value

最后统计出现次数最多的key就可以了

全部评论

相关推荐

06-12 16:23
已编辑
小米_软件开发(准入职员工)
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-11 13:34
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务