[LeetCode][Medium]Group Anagrams


質問する

  • から与えられたリストからエネルギーマップを見つけて分類し、
  • を出力する.
  • 出力順はフリー
  • である.

    に答える


    Annegramをグループごとに表示する必要があるので、印刷する資料型はlistが望ましい.
    result = collections.defaultdict(list)
    文法図を見つける最善の方法は、単語を構成する文字を辞書的にソートすることです.sorted()関数は、文字列をソートすることもできますが、その結果は単一の文字で区切られるため、''.join()が文字列として再貼り付けられる必要があります.
    Annegram単語をキーに、元の単語を値としてdickshernerに入れます.
    for word in strs:
    	result[''.join(sorted(word))].append(word)
    その結果、Annegramでグループ化された元の単語のみが表示されるため、値として出力されます.
    return result.values()
    コード全体を以下に示します.
    class Solution:
        def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
            
            result = collections.defaultdict(list)
            
            for word in strs:
                result[''.join(sorted(word))].append(word)
            
            return result.values()