1. 題目
https://leetcode-cn.com/problems/first-unique-character-in-a-string/
給定一個字符串,找到它的第一個不重復(fù)的字符,并返回它的索引聂抢。如果不存在九杂,則返回 -1椭员。
案例:
s = "leetcode"
返回 0.
s = "loveleetcode",
返回 2.
注意事項:您可以假定該字符串只包含小寫字母状您。
2. 我的AC
class Solution(object):
def firstUniqChar(self, s):
"""
:type s: str
:rtype: int
"""
mapping = {}
for char in s:
if char not in mapping:
mapping[char] = 1
else:
mapping[char] += 1
for i in range(len(s)):
if mapping[s[i]] == 1:
return i
else:
return -1
3. 小結(jié)
- 字典的值列表
-
dict.values()
以列表返回字典中的所有值
- 列表索引
-
list.index(obj)
某個值第一個匹配項的索引位置
- 遍歷字典元素
-
for key in d:
得到元素的鍵 -
key, value in d.iteritems():
訪問鍵和對應(yīng)的值