题解 | #删除字符串中出现次数最少的字符#

删除字符串中出现次数最少的字符

http://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9

#include<stdio.h>

int main()
{
    char str[21] = { '0' };    //接收20个字符
    while ((scanf("%s", str) != EOF)) 
    {
        int len = strlen(str);
        int flag[26] = { 0 };    //存储26个小写字母输入数量
        int min = 20;    //假设最小值为20--总能接收20个字符且全为同个
        for (int i = 0; i < len; i++)    //循环存储26个小写字母在str中的输入数量
        {
            if (str[i] >= 'a' && str[i] <= 'z') 
            {
                flag[str[i] - 'a']++;
            }
        }
        for (int i = 0; i < 26; i++)    //循环判断出现次数最少的字母
        {
            if (flag[i] && flag[i] < min) 
            {
                min = flag[i];
            }
        }
        for (int i = 0; i < len; i++)    //循环输出,过滤数量最少字母,且仅保留小写字母
        {
            if ((flag[str[i]-'a'] > min) && (str[i] >= 'a' && str[i] <= 'z'))
            {
                printf("%c", str[i]);    
            }
        }
        printf("\n");
    }
    return 0;
}
全部评论
妙蛙种子
点赞 回复 分享
发布于 2022-08-08 12:33

相关推荐

11-26 22:34
已编辑
重庆邮电大学 Java
快手 客户端开发 (n+5)k*16 公积金12
牛客895077908号:佬 什么双非硕啊
点赞 评论 收藏
分享
威猛的小饼干正在背八股:挂到根本不想整理
点赞 评论 收藏
分享
斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务