LeetCode刷题笔记第49题:字母异位词分组
题目:
想法:
遍历列表中的所有字符串,将字符串中字符进行排序并作为字典的键,并将原字符串做为值保存,最终输出字典的值就是最终的答案。
class Solution:
def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
mp = collections.defaultdict(list)
for s in strs:
key = "".join(sorted(s))
mp[key].append(s)
return list(mp.values())
时间复杂度:
O
(
n
k
l
o
g
k
)
O(nklogk)
O(nklogk)
空间复杂度:
O
(
n
k
)
O(nk)
O(nk)