给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出 no。
时间: 2023-12-25 20:26:32 浏览: 136
字符串中第一个只出现一次的字符.md
题目要求我们在一个只包含小写字母的字符串中找到第一个仅出现一次的字符,如果没有则输出 no。有两种思路可以解决这个问题。
思路1:统计各个字符出现的次数,然后找到最先出现的只出现一次的字符输出,如果没有输出 no。
具体实现方法如下:
1. 建立一个空字典 dt。
2. 遍历字符串 s,用 get 函数来得到各个字符出现的次数。
3. 再次遍历字符串 s,找到第一个为 1 的字符,输出并更新标志 flag 为 0,跳出循环。
4. 如果没有符合条件的字符,打印 no。
代码实现如下:
```python
s = input()
flag = 1
dt = {} # 建立一个空字典
for i in s:
dt[i] = dt.get(i, 0) + 1 # 用 get 函数来得到各个字符出现的次数
for i in s:
if dt[i] == 1: # 找到第一个为 1 的字符
print(i)
flag = 0 # 更新标志
break
if flag == 1: # 如果没有符合条件的字符
print('no')
```
思路2:遍历字符串 s,对于每个字符,再次遍历字符串 s,统计该字符出现的次数,如果出现次数为 1,则输出该字符并返回,否则继续遍历。如果遍历完整个字符串都没有符合条件的字符,则输出 no。
代码实现如下:
```python
s = input()
for i in s:
count = 0
for j in s:
if i == j:
count += 1
if count == 1:
print(i)
break
else:
print('no')
```
阅读全文