方案一:
超时:
# a = list(s)
# b = []
# for i in range(len(a)):
# b = a[:] # b = a 是浅拷贝,会创建新对象,其内容是对原对象的引用,改其中一个另一个也会变。
# # b =a[:] 改其中一个另一个不会变。切片操作。
# del b[i] # 删除一个列表
# if a[i] not in b:
# return i
方案二:
用字典,两个for循环
class Solution:
def firstUniqChar(self, s: str) -> int:
my_dict={}
for char in s:
if char in my_dict:
my_dict[char] += 1
else:
my_dict[char] = 1
if 1 not in my_dict.values():
return -1
for i in range(len(s)):
if my_dict[s[i]] == 1:
return i
leetcode 字符串中的第一个唯一字符 python3
最新推荐文章于 2022-08-31 09:38:21 发布