給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 -1。
案例:s = 「leetcode」
返回 0.
s = 「loveleetcode」,
返回 2.
注意事項:您可以假定該字串只包含小寫字母。
class solution:
def firstuniqchar(self, s: str) -> int:
s_dict = collections.counter(s)
n=len(s)
for i in range(n):
if s_dict[s[i]] == 1: # 如果字典中value為1
return i
else:
return -1
這裡一開始並不會用collection裡的counter,後來看了下發現真的方便 。。想想以後還有好多可以用上。
這篇文章 很好的講述了counter的用法
Leetcode 字串 字串中的第乙個唯一字元
題目 給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。示例 s leetcode 返回 0 s loveleetcode 返回 2 補充知識 1。字串中的charat 方法能將字串中的字元分割。2。hashmap中的方法getordefault key,defaul...
leetcode 字串中的第乙個唯一數字
題目 給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。示例 s leetcode 返回 0 s loveleetcode 返回 2 提示 你可以假定該字串只包含小寫字母。解題思路 線性時間複雜度解法 這道題最優的解法就是線性複雜度了,為了保證每個元素是唯一的,至少得...
Leetcode 字串中的第乙個唯一字元
給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。案例 s leetcode 返回 0.s loveleetcode 返回 2.注意事項 您可以假定該字串只包含小寫字母。思路分析 需要逐次使用串中的單個元素和其餘的元素比較 內外兩層迴圈 設定乙個布林型別的變數 初始化...