1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 如何找出数组中重复次数最多的元素

如何找出数组中重复次数最多的元素

时间:2019-08-26 08:12:11

相关推荐

如何找出数组中重复次数最多的元素

web前端|js教程

次数,重复,数组

web前端-js教程

以此开始我博客生涯

制作简单的淘宝客网站源码,vscode编译错误中文,删除Ubuntu条目,tomcat不加载war,爬虫 抢票,php 下载文件到本地,手机seo排名优化软件广告,校园自助打印网站源码,网站管理模板lzw

—————————————————–警醒自己

帮助源码,ubuntu自动隐藏,tomcat浏览器访问不通,python清理爬虫,php打包exe教程交流,肇东seo软文lzw

题目:数组中重复次数最多的元素

vc打印源码,ubuntu显卡怎么升级,tomcat上传大文件失败,桃叭爬虫,php8.0.17配置,seo资源网站seo工资lzw

废话不多说,直接上代码——-

第一种方法:

function getMost(arr){var hash = {};var m = 0; var trueEl;var el;for(var i = 0,len = arr.length; i = m){m = hash[el];trueEl = el; }}return trueEl;};

第二种方法:

function getMost(arr) {if (!arr.length) returnif (arr.length === 1) return 1var res = {}// 遍历数组for (var i=0,l=arr.length;i<l;i++) {if (!res[arr[i]]) {res[arr[i]] = 1;} else {res[arr[i]]++;}}// 遍历 resvar keys = Object.keys(res);console.log(keys);var maxNum = 0, maxEle;for (var i=0,l = keys.length;i maxNum) {maxNum = res[keys[i]];maxEle = keys[i];} return maxEle;}

第三种方法:

Array.prototype.getMost = function(){var obj = this.reduce((p,n) =>(p[n]++ ||(p[n] = 1),(p.max=p.max>=p[n]?p.max:p[n]), (p.key=p.max>p[n]?p.key:n), p), {});return key: + obj.key+ len: +obj.max;}var arr = [1,2,3,4,2,1,4,2,3,5];arr.getMost();

第三种方法有个bug,如果最多重复次数的元素有多个,则返回最后一个元素。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。