算法 :查找字符串中出现最频繁的字母和次数

题目描述:

  输出查找字符串中出现最频繁的字母和出现的次数

示例:

  输入:str='abanckjfsdfkk'

  输出:k 次数3

综合解法(javascript):

function findMustLetter(str){
    var arr=[];
    for(let i=0;i<str.length;i++){ 
        let item={};
        let items= arr.filter(val=>{
            return val.letter==str[i];
        });
        if(items.length==0){
            item.letter=str[i],
            item.nums=1;
            arr.push(item);
        }else{
            items[0].nums+=1;
        }
    }
    return arr;    
}
var letters_arr=findMustLetter("abndkdkfekj");
letters_arr.sort((a,b)=>{return b.nums - a.nums});
console.log('出现最多的字母是:',letters_arr[0].letter,'||最多次数:',letters_arr[0].nums);

总结:

  作为一道频繁出现的面试题,难度相对较小使用js解决起来没什么麻烦的就不叙述了。

原文地址:https://www.cnblogs.com/gamecc666/p/14679332.html