【题目描述】
给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。
【输入】
一个字符串,长度小于100000。
【输出】
输出第一个仅出现一次的字符,若没有则输出no。
【输入样例】
abcabd
【输出样例】
c
代码如下:
#include<iostream>
#include<cstring>
using namespace std;
char a[100100];
int b[130];
int main(){
int len,n,k,cnt=0;
cin>>a;
len=strlen(a);//读取字符串长度
for(int i=0;i<=len;i++){
n=(int)(a[i]);
b[n]++;//计算每个字符的个数
}
for(int i=0;i<=len;i++){
k=(int)(a[i]);
if(b[k]==1){
cout<<(char)(k);
return 0;
}
else{
cnt++;
if(cnt==len-1)
{
cout<<"no";
return 0;
}
}
}
return 0;
}