leetcode-242:有効なアルファベット異位語


LC有効なアルファベット異位語
  • テーマ:
  • 解題:
  • 方法一:ハッシュテーブル(i)
  • メソッド2:ソート

  • タイトル:
    タイトルリンクは2つの文字列sとtを与え,tがsのアルファベット異位語であるか否かを判断する関数を記述する.
    例1:
      : s = "anagram", t = "nagaram"
      : true
    

    例2:
      : s = "rat", t = "car"
      : false
    

    問題を解く:
    方法1:ハッシュテーブル(i)
    まず1つの文字列の各文字をハッシュ表カウントに入れて、もう1つの文字列を遍歴して、1回現れるたびにハッシュ表の対応する値を1つ減らして、減らすことができないならば、Falseに戻ります
    class Solution:
        def isAnagram(self, s: str, t: str) -> bool:
            if len(s)!=len(t):
                return False
            hush = dict()
            for char in s:
                hush[char] = hush.get(char,0)+1
            for char in t:
                if char not in hush:
                    return False
                else:
                    if hush[char] == 0:
                        return False
                    else:
                        hush[char] -=1
            return True
    

    方法2:並べ替え
    並べ替えた結果が同じならアルファベット異位語
    class Solution:
        def isAnagram(self, s: str, t: str) -> bool:
            if sorted(s)==sorted(t):
                return True
            return False