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

给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no 。
输入: 一个字符串,长度小于 100000 。
输出: 输出第一个仅出现一次的字符,若没有则输出 no 



高子小道
浏览 4349回答 1
1回答

asd8532

扫描两次字符串就可以了.第一趟给所有字母计数.第二趟找第一个次数为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; }
打开App,查看更多内容
随时随地看视频慕课网APP