zoukankan      html  css  js  c++  java
  • JavaScript判断字符串中出现次数最多的字符,并统计其次数

    要求:

    输出一个给定字符串abdgdbcaethbganmugthaesqszaphfdvwd中出现次数最多的字符,并统计其次数。

    实现思路:

    1. 利用charA()遍历这个字符串
    2. 把每个字符都存储给对象,如果对象没有该属性,就先幅值为1,如果存在了就+1
    3. 遍历对象,得到最大值和该字符
    4. 在遍历的过程中,把字符串中的每个字符作为对象的属性存储在对象中,对应的属性值是该字符出现的次数

    代码实现:

    // 1.统计次数
    var str = 'abdgdbcaethbganmugthaesqszaphfdvwd';
    var obj = {};
    // 创建了一个空的对象,存储字符串中的每个字符。属性:每个字符,属性值:该字符出现的次数
    for (var i = 0; i < str.length; i++) {
        // 遍历字符串
        var chars = str.charAt(i);
        // chars代表字符串的每一个字符
        if (obj[chars]) {
            obj[chars]++;
        } else {
            obj[chars] = 1;
        }
        // obj[chars]属性值:该字符出现的次数
        // 如果已经存在,那么次数+1;否则赋值为1
    }
    console.log(obj);
    // 输出对象obj,显示每个字符出现的次数
    
    // 2.遍历对象,找出最大的次数
    var max = 0;
    var ch = '';
    for (var k in obj) {
        if (obj[k] > max) {
            max = obj[k];
            ch = k;
        }
    }
    // k代表属性:每个字符
    // obj[k]代表属性值:该字符出现的次数
    // 将次数最多的字符赋值到ch
    
    console.log('最多的字符是' + ch + ',次数为' + max);
    

    输出结果:

    {a: 5, b: 3, d: 4, g: 3, c: 1, …}
    
    最多的字符是a,次数为5
    
  • 相关阅读:
    Spring 框架学些(二)Spring AOP
    Spring框架学习(一)
    java spring框架的HelloWord
    Windows下查看进程执行参数
    js的code标签显示插件
    初接触hbase数据库
    gpg加密使用
    .net core全球化配置、使用
    CSS添加本地字体
    2011年NOIP普及组复赛题解
  • 原文地址:https://www.cnblogs.com/jacklzx/p/13776919.html
Copyright © 2011-2022 走看看