String related interview questions

I'm bald and stronger

Count the number of occurrences of a character in a string

实现思路 :使用for循环遍历字符串,生成一个num变量,每个重复的字符都会使其增加1
let str='hello everyone';
let s='e'
function catStr(str,s){
    
    
    ler num=0;

    for(var i=0,len=str.length;i<len;i++){
    
    

        if(str[i]==s){
    
    

            num++

        }

    }

return num

}

catStr(str)

//for是最省性能的

Count the most frequent characters and the number of occurrences in a string

实现思路 : 生成一个对象,它的key为每个不重复的字符;默认值为1,重复的字符值增加1
    let str = 'asfkshfkhsagdadgawassadas';

    function getMax(str){
    
    
      let obj={
    
    }    //新建对象用来接收字符作为key值
      for(let i=0;i<str.length;i++){
    
    
        let n=str.charAt(i)
        if(obj[n]){
    
       //每个字符对应一个key值,不存在该值的时候该值=1,存在重复时增加1
          obj[n]++
        }else{
    
    
          obj[n]=1
        }
      }
      //return obj   //这一步完成后obj获取了所有的字符的数量
      let maxStr=''
      let maxNum=0    //生成两个空值用来接收
      for(let i in obj){
    
    
        if(obj[i]>maxNum){
    
        //进行对比,找到出现次数最多的字符
          maxNum=obj[i]     
          maxStr=i
        }
      }
      console.log('出现次数最多的字符是:'+maxStr);
      console.log('出现的次数为:'+maxNum)
    }

Guess you like

Origin blog.csdn.net/weixin_51198863/article/details/112966525