为了账号安全,请及时绑定邮箱和手机立即绑定

找第一个只出现一次的字符

找第一个只出现一次的字符

C++
高子小道 2016-05-07 20:21:41
给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no 。输入: 一个字符串,长度小于 100000 。 输出: 输出第一个仅出现一次的字符,若没有则输出 no 
查看完整描述

1 回答

?
asd8532

TA贡献143条经验 获得超187个赞

扫描两次字符串就可以了.
第一趟给所有字母计数.
第二趟找第一个次数为1的字母

int main() 
{ 
    char c[]="abaccdeff";
    int bit_map[26]={0};
    int i=0;
    for(;i<strlen(c);++i)
            bit_map[c[i]-'a']++;
    for(i=0;i<strlen(c);++i)
    {
        if(bit_map[c[i]-'a']==1)
        {
            printf(" %c ",c[i]);
            break;
        }
    }
    if(i>=strlen(c))
        printf("No ele to the rule\n"); 
    return 0;
}


查看完整回答
1 反对 回复 2016-05-09
  • 1 回答
  • 0 关注
  • 4348 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信