group_anagrams

 1from collections import defaultdict, Counter
 2
 3
 4# @leet start
 5class Solution:
 6    def groupAnagrams(self, strs: list[str]) -> list[list[str]]:
 7        anagrams = defaultdict(list)
 8        for s in strs:
 9            key = frozenset(Counter(s).items())
10            anagrams[key].append(s)
11
12        return list(anagrams.values())
13
14
15# @leet end
class Solution:
 6class Solution:
 7    def groupAnagrams(self, strs: list[str]) -> list[list[str]]:
 8        anagrams = defaultdict(list)
 9        for s in strs:
10            key = frozenset(Counter(s).items())
11            anagrams[key].append(s)
12
13        return list(anagrams.values())
def groupAnagrams(self, strs: list[str]) -> list[list[str]]:
 7    def groupAnagrams(self, strs: list[str]) -> list[list[str]]:
 8        anagrams = defaultdict(list)
 9        for s in strs:
10            key = frozenset(Counter(s).items())
11            anagrams[key].append(s)
12
13        return list(anagrams.values())