C++输入一个不带空格的字符串str输出在字符串 str 中第一个只出现一次的字符。如输入描述共1行。一个不带空格的字符串输出描述共1行 表第一个只出现一次的字符或者NO果没有输出NO。
以下是一个C++的实现代码:
#include <iostream>
#include <unordered_map>
using namespace std;
char firstUniqueChar(string str) {
unordered_map<char, int> freq;
for (char c : str) {
freq[c]++;
}
for (char c : str) {
if (freq[c] == 1) {
return c;
}
}
return 'N'; // 如果没有只出现一次的字符,则返回 'N'
}
int main() {
string str;
cin >> str;
char result = firstUniqueChar(str);
if (result == 'N') {
cout << "NO" << endl;
} else {
cout << result << endl;
}
return 0;
}
该代码首先使用 unordered_map 统计每个字符出现的频次,然后再遍历字符串找到第一个只出现一次的字符。如果不存在只出现一次的字符,则返回 'N'
原文地址: http://www.cveoy.top/t/topic/hUbe 著作权归作者所有。请勿转载和采集!