资讯专栏INFORMATION COLUMN

获取字符串中出现次数最多的字符

denson / 744人阅读

摘要:偶然看到的一个题目,从一串字符串里获取出现次数最多的字符并返回长度几番简化,用一串代码解决,如下加入字符串已有下面来个步骤分析版分割字符数组去重不支持,换个简单的去重方法二去重后开始获取我们的字符在字符串中的个数每个字符在里面的个数返回一

偶然看到的一个题目,从一串字符串里获取出现次数最多的字符并返回长度

几番简化,用一串代码解决,如下:
加入字符串已有:let str = "awfoeifaoifauwefa";

let outcome0 = Array.from(new Set(str.split(""))).map((a,b) => [a,str.match(new RegExp(a,"g")).length]).sort((a,b) => b[1] - a[1]).slice(0,1);
console.log(...outcome0)

下面来个步骤分析版:

let arr = str.split("");//分割字符
let _arr = Array.from(new Set(arr));//数组去重

Array.from()不支持IE(supported),换个简单的去重方法二:

arr.sort();
let _arr = [];
for(let i =0;i

去重后开始获取我们的字符在字符串中的个数:

let new_arr = _arr.map(function(a,b){
    let count = str.match(new RegExp(a,"g")).length;//每个字符在str里面的个数
    return [a,count];//返回一个带有字符和长度[s,len]的数组
});
new_arr.sort(function(a,b){
    return b[1] - a[1];//按照字符长度len从大到小排序
});
let [outcome] = [...new_arr.slice(0,1)];//第一个数组的len值最大
console.log(outcome)

最后console的答案是["a",4]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/84183.html

相关文章

  • 面试题:寻找一个符串出现次数多的字符以及出现次数

    摘要:要求编写代码实现寻找一个字符串中出现次数最多的字符以及出现的次数。最后只需要在集合中找到值最大的即可。 要求编写代码实现:寻找一个字符串中出现次数最多的字符以及出现的次数。 解法一:用删除法实现 (挺巧妙的一种) public class FindTheMostAppearChar { public static void main(String[] args) { del...

    lei___ 评论0 收藏0
  • JavaScript初应用:找到数组出现多的字母并给出个数以及每一个所在的位置

    摘要:刚刚接触一周的时间,熟悉了最基本的知识,这是自己面对的第一个的逻辑性的代码题目,自己尝试了写了,结果还算可以,因为有好多知识涉及到了后面的知识,就有点吃力了。以下代码总结于网上前辈给出的参考答案和结合了自己的理解和注释,请多多指正。 刚刚接触JS一周的时间,熟悉了最基本的js知识,这是自己面对的第一个js的逻辑性的代码题目,自己尝试了写了,结果还算可以,因为有好多知识涉及到了后面的do...

    Zhuxy 评论0 收藏0
  • JavaScript初应用:找到数组出现多的字母并给出个数以及每一个所在的位置

    摘要:刚刚接触一周的时间,熟悉了最基本的知识,这是自己面对的第一个的逻辑性的代码题目,自己尝试了写了,结果还算可以,因为有好多知识涉及到了后面的知识,就有点吃力了。以下代码总结于网上前辈给出的参考答案和结合了自己的理解和注释,请多多指正。 刚刚接触JS一周的时间,熟悉了最基本的js知识,这是自己面对的第一个js的逻辑性的代码题目,自己尝试了写了,结果还算可以,因为有好多知识涉及到了后面的do...

    darkerXi 评论0 收藏0
  • js如何获取符串出现次数多的字符

    摘要:再对的每个属性进行遍历,找出出现次数最多的字符串合集存入数组,并把数组打印出来。最后将得到数组放在返回对象的属性中返回出去用对象返回是为了方便该方法以后的拓展。 我是一个不太会表达的人,所以我尽可能的用代码来阐释我的理解和思考,废话不多说,我就直接放代码了: function getStingMax(str){ if(typeof str !== string){ ...

    khs1994 评论0 收藏0
  • 查找字符数组出现次数多的字符

    摘要:给定一个字符数组,例如找出数组中出现次数最多的字符,如果存在相同次数的字符,取出现较早者。 给定一个字符数组,例如char[] chars = { a, b, b, b, b, c, a, a, a};找出数组中出现次数最多的字符,如果存在相同次数的字符,取出现较早者。一个问题的解决方案有多种: 利用数据结构的特性,链表保证了插入顺序,Map正是我们想要的字符与出现次数对应关系的映...

    plus2047 评论0 收藏0

发表评论

0条评论

denson

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<