以下是一个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'

C++输入一个不带空格的字符串str输出在字符串 str 中第一个只出现一次的字符。如输入描述共1行。一个不带空格的字符串输出描述共1行 表第一个只出现一次的字符或者NO果没有输出NO。

原文地址: http://www.cveoy.top/t/topic/hUbe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录