在一个长为n的字符串中找到第一个只出现一次的字符,并返回他的位置,如果没有则返回-1,用python实现
时间: 2023-08-26 08:56:39 浏览: 127
可以使用字典来统计每个字符出现的次数,然后再遍历一遍字符串找到第一个出现次数为1的字符的位置。以下是用Python实现的代码:
```python
def firstUniqChar(s):
# 统计字符出现的次数
char_count = {}
for char in s:
char_count[char] = char_count.get(char, 0) + 1
# 遍历字符串找到第一个出现次数为1的字符
for i, char in enumerate(s):
if char_count[char] == 1:
return i
return -1
```
你可以调用 `firstUniqChar` 函数并传入一个字符串来测试。例如:
```python
s = "abcaabde"
print(firstUniqChar(s)) # 输出 3,因为第一个只出现一次的字符是 'c',在索引 3 处
```
希望这可以帮助到你!如果还有其他问题,请随时提问。
阅读全文