从键盘读入一个字符串,查找字符串中首个重复出现的小写字母,在屏幕上输出该字母及其在字符串中第一次和第二次出现的位置。字符的位置从1开始计数。
时间: 2024-03-05 13:53:35 浏览: 64
C++统计中英文大小写字母、数字、空格及其他字符个数的方法
5星 · 资源好评率100%
好的,这是一个关于字符串处理的问题,我会帮您解答。
首先,我们可以使用一个哈希表来记录字符串中每个小写字母出现的位置,如果一个字母已经在哈希表中出现过,那么它就是第一个重复出现的小写字母。我们可以使用 Python 的字典来实现哈希表。
以下是实现该算法的 Python 代码:
```python
s = input("请输入字符串: ")
d = {}
for i, c in enumerate(s):
if c.islower():
if c in d:
print(f"重复出现的小写字母是 {c},在位置 {d[c]} 和 {i+1} 出现过。")
break
else:
d[c] = i+1
else:
print("没有重复出现的小写字母。")
```
这段代码首先从键盘读取一个字符串,然后遍历字符串中的每个字符。如果字符是小写字母,就在哈希表中记录它的位置。如果一个字母已经在哈希表中出现过,那么它就是第一个重复出现的小写字母。在找到重复出现的小写字母后,我们使用 `break` 语句退出循环。如果没有找到重复出现的小写字母,就会执行 `else` 语句块。
阅读全文