【题目描述】
给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。
【输入】
一个字符串,长度小于100000。
【输出】
输出第一个仅出现一次的字符,若没有则输出no。
【输入样例】
abcabd
【输出样例】
c
这道题,只需遍历每个字符出现的数量,如果等于一,输出,结束,一直没有找到则输出“no”
代码如下
#include<bits/stdc++.h>
using namespace std;
string s;
int b[100001];
int main(){
getline(cin,s);
for(int i=0;i<s.size();i++) b[s[i]]++; //遍历每个字符出现的次数
for(int i=0;i<s.size();i++)
{
if(b[s[i]]==1)
{
cout<<char(s[i]); //强制转换,这一行还可以这样写:cout<<(char)s[i];
return 0;
}
}
cout<<"no"; //都没找到,输出“no”
return 0;
}
此代码仅供参考,请勿纯抄