输入一个由小写字母组成的字符串(字符数量<=100),输出出现次数最多的小写字母。

注意:如果有多个小写字母出现的次数一样多,则输出ASCII码值最大的那个字母。

小学生方法

我们可以使用一个长度为26的数组来统计每个小写字母出现的次数,数组的索引对应字母的ASCII码值减去97。遍历字符串,每次遇到一个小写字母,就将对应位置的计数器加1。遍历结束后,再遍历一次数组,找到出现次数最多的字母,同时记录其对应的ASCII码值。最后输出ASCII码值最大的字母即可。

代码示例

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    string s;
    cin >> s;
    
    int count[26] = {0}; // 用于统计每个小写字母的出现次数
    
    for (int i = 0; i < s.length(); i++) {
        if (s[i] >= 'a' && s[i] <= 'z') {
            count[s[i] - 'a']++; // 对应字母的计数器加1
        }
    }
    
    int maxCount = 0;
    char maxChar = 'a' + 25; // 初始化为字母'z'
    
    for (int i = 0; i < 26; i++) {
        if (count[i] > maxCount) {
            maxCount = count[i];
            maxChar = 'a' + i; // 更新出现次数最多的字母
        }
    }
    
    cout << maxChar << endl;
    
    return 0;
}

输入样例:

aaabbbbbbbbbcdxs

输出样例:

b
C++ 字符串中出现次数最多的字母 - 小学生都能看懂的代码

原文地址: https://www.cveoy.top/t/topic/pawu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录