给定一个字符串 其中有些字符在字符串中出现了2次 找到这些字符第一次出现的位置,字符在字符串中的位置从1开始 如果没有只出现2次的字符,返回0
时间: 2024-03-17 21:45:52 浏览: 49
好的,我明白了你的问题。下面是解决方案:
1. 首先,我们需要对字符串进行遍历,将每个字符出现的次数保存下来。
2. 然后,再次遍历字符串,查找出现次数为2的字符,并记录它们第一次出现的位置。
3. 如果没有出现次数为2的字符,则返回0。
下面是具体的实现代码(使用Python语言):
```python
def find_first_appearance(string):
char_count = {} # 用于保存每个字符出现的次数
for i in range(len(string)):
if string[i] not in char_count:
char_count[string[i]] = 1
else:
char_count[string[i]] += 1
result = [] # 用于保存出现次数为2的字符第一次出现的位置
for i in range(len(string)):
if char_count[string[i]] == 2:
result.append(i+1) # 字符在字符串中的位置从1开始
char_count[string[i]] = -1 # 将出现次数为2的字符标记为-1,避免重复计算
if len(result) == 0:
return 0
else:
return result
```
你可以将字符串作为参数传递给这个函数,它将返回出现次数为2的字符第一次出现的位置,如果没有这样的字符,则返回0。
阅读全文