Last updated 2 years ago
Anagram 的特性就是裡面的每個字元出現的頻率相同,如果經過排序的話,只要是 Anagram 就一定會一樣。
利用這個特性,我們將每個詞都排序過,當作 key ,在 Hash table 裡面去把每個 anagram 加到那個 arrary 裡面。
class Solution: def groupAnagrams(self, strs: List[str]) -> List[List[str]]: table = defaultdict(list) for s in strs: table[tuple(sorted(s))].append(s) return table.values()