leetcode 49. Group Anagrams使用【python】求解 题目: Given an array of strings, group anagrams together. For example, given: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”], Return:
[ [“ate”, “eat”,“tea”], [“nat”,“tan”], [“bat”] ] Note: All inputs will be in lower-case.
提示: 题中需要把相同字母组成的单词归为一类,故可以用dict进行实现。将单词拆分排序后作为key,value为一个list,将排序前的单词插入list。
class Solution:
def groupAnagrams(self
, strs
: List
[str]) -> List
[List
[str]]:
ans
={}
for s
in strs
:
tmp
=tuple(sorted(s
))
if tmp
in ans
:
ans
[tmp
].append
(s
)
else:
ans
[tmp
]=[s
]
return list(ans
.values
())