给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。
【输入】
一个字符串,长度小于100000(使用两层循环时,如果找到两个及以上的相同符号跳出循环就不会超时)。
【输出】
输出第一个仅出现一次的字符,若没有则输出no。
【样例输入】
abcabd
【样例输出】
c
样例解释
无
此题代码及思路如下:
#include<bits/stdc++.h>
using namespace std;
char n[100005];
int a[125];
int main(){
cin>>n;
for(int i=0;i<strlen(n);i++)
{
a[n[i]]++;//字符数组下标计数
}
for(int i=0;i<strlen(n);i++)
{
if(a[n[i]]==1){cout<<n[i];return 0;}//在字符数组中寻找第一个出现一次的数
}
cout<<"no";
return 0;
}