用 Python 编写程序,查找给定字符串中第一个重复字符的索引
pythonserver side programmingprogramming更新于 2026/1/12 17:48:17
假设我们有一个字符串 s,我们必须在其中找到第一个重复字符的索引。如果我们找不到重复字符,则返回 -1。
因此,如果输入类似于"abcade",则输出将为 3,因为"a"再次出现在索引 3 处。
为了解决这个问题,我们将遵循以下步骤 −
- 定义一个 chars 映射
- 对于范围从 0 到 s 大小的 i,执行
- 如果 s[i] 在 chars 中,则
- 返回 i
- 否则,
- chars[s[i]] := chars[s[i]] + 1
- 如果 s[i] 在 chars 中,则
- 返回 -1
让我们看看下面的实现以便更好地理解 −
示例
from collections import defaultdict
class Solution:
def solve(self, s):
chars = defaultdict(int)
for i in range(len(s)):
if s[i] in chars:
return i
else:
chars[s[i]] += 1
return -1
ob = Solution()
print(ob.solve("abcade"))
输入
"abcade"
输出
3
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

