目录
牛客HJ59 找出字符串中第一个只出现一次的字符
解析代码
牛客HJ59 找出字符串中第一个只出现一次的字符
找出字符串中第一个只出现一次的字符_牛客题霸_牛客网
解析代码
可以用一个数组的每一个位置表示对应的位置。对应的字符位置存放字符出现的次数。统计完之后,遍历输入字 符,遇到第一个只出现一次的字符就停止。
#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;
int main()
{
string str = "";
getline(cin, str);
unordered_map<char, int> hash; // 字符和出现的次数
for (auto& e : str)
{
hash[e]++;
}
string strOne = "";
for (auto& e : hash)
{
if (e.second == 1)
{
strOne += e.first;
}
}
// cout << strOne << endl;
for (auto& e : str)
{
for (auto& One : strOne)
{
if (One == e)
{
cout << e << endl;
return 0;
}
}
}
cout << -1 << endl;
return 0;
}