题解 | #找出字符串中第一个只出现一次的字符#

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

http://www.nowcoder.com/practice/e896d0f82f1246a3aa7b232ce38029d4

将字符放入对应角标的数组位置,如果有重复的该位置数字加一,之后判断其值就可找到第一次出现的字符。

#include<stdio.h>
#include<string.h>
int main()
{
    char a[10000]={0};
    while(scanf("%s",a)!=EOF)
    {
        int b[26]={0};
        int len=strlen(a);
        for(int i=0;i<len;i++)
        {
            b[a[i]-'a']=b[a[i]-'a']+1;
        }
        int m,k=0,l=-1;
        for(int i=0;i<26;i++)
        {
            if(b[a[i]-'a']==1)
            {
                k=k+1;
                m=a[i];
                printf("%c\n",m);
                break;
            }
        }
        if(k==0)
        printf("%d\n",l);
     }
}
全部评论

相关推荐

11-09 11:01
济南大学 Java
Java抽象带篮子:外卖项目真得美化一下,可以看看我的详细的外卖话术帖子
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务