387.文字列の最初の一意の文字.py----leetcodeブラシ問題(python解題)

3482 ワード

[TOC]
タイトル
文字列を指定し、最初の重複しない文字を見つけ、インデックスを返します.存在しない場合は、-1を返します.
ケース:
        s = "leetcode"
      

0を返します.
        s = "loveleetcode",
      

は、2を返します.
注意:文字列には小文字のみが含まれていると仮定できます.
ソース:力ボタン(LeetCode)リンク:https://leetcode-cn.com/problems/first-unique-character-in-a-string著作権はインターネットの所有に帰属する.商業転載は公式の授権に連絡してください.非商業転載は出典を明記してください.
に答える
leetcode解題
        import collections

class Solution1(object):  #    
    def firstUniqChar(self, s):
        """
        :type s: str
        :rtype: int
        """
        for a,i in enumerate(s):
            aa = s.replace(i,"",1)
            if i not in aa:
                return a


class Solution2(object):  #    
    def firstUniqChar(self, s):
        """
        :type s: str
        :rtype: int
        """
        index=0
        count = collections.Counter(s)
        for i in s:
            if count[i]==1:
                return index
            else:
                index+=1
        return -1