
这道题可以用字典解决,只需要2次遍历字符串,第一次遍历字符串,记录每个字符出现的次数,第二次返回第一个出现次数为1的字符的下标,若找不到则返回-1
class Solution(object):
def firstUniqChar(self, s):
"""
:type s: str
:rtype: int
"""
ans = {s[i]:0 for i in range(len(s))}
for i in range(len(s)):
ans[s[i]] += 1
for i in range(len(s)):
if ans[s[i]] == 1:
return i
return -1




![[面试题]Java【并发】](https://img-blog.csdnimg.cn/direct/6507af77273149edbd66e3abcb940ebf.jpeg#pic_left)












![[Algorithm][贪心][最长递增子序列][递增的三元子序列][最长连续递增序列][买卖股票的最佳时机][买卖股票的最佳时机Ⅱ]详细讲解](https://img-blog.csdnimg.cn/direct/fc309c01d1a44501bc32ebc59a058d87.png)


