02:找第一个只出现一次的字符
时间: 2023-11-22 12:12:20 浏览: 32
题目02要求找到一个只出现一次的字符,如果没有则输出"no"。
你可以使用一个数组来计数字符串中每个字符出现的次数,然后再遍历一次字符串,找到第一个计数为1的字符即可。如果没有计数为1的字符,则输出"no"。
以下是一个示例代码,可以实现上述逻辑:
#include <iostream>
#define MAXN 100010
char a[MAXN];
int c[30];
using namespace std;
int main() {
gets_s(a);
for (int i = 0; a[i]; i++) {
c[a[i] - 'a']++;
}
for (int i = 0; a[i]; i++) {
if (c[a[i] - 'a'] == 1) {
cout << a[i] << endl;
return 0;
}
}
cout << "no" << endl;
return 0;
}
以上代码通过遍历两次字符串,第一次计算字符出现的次数,第二次找到第一个计数为1的字符并输出。如果没有计数为1的字符,则输出"no"。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [02:找第一个只出现一次的字符](https://blog.csdn.net/qq_45774073/article/details/113097747)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [1130:找第一个只出现一次的字符.cpp](https://download.csdn.net/download/HI_REY/87499549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [002:找第一个只出现一次的字符](https://blog.csdn.net/Crystal_LYP/article/details/89365220)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]