题目描述:
给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。
示例:
输入:["eat","tea","tan","ate","nat","bat"],
输出:[
["ate","eat","tea"],
["nat","tan"],
["bat"]
]
说明:
- 所有输入均为小写字母。
- 不考虑答案输出的顺序。
class Solution(object):
def groupAnagrams(self, strs):
"""
:type strs: List[str]
:rtype: List[List[str]]
"""
#思路:处理过程用map进行保存;key和value值分别对应 字母的从小到大排列值 和 strs中的真实值
map_ = {}
for i in range(len(strs)):
tmp = ''.join(sorted(strs[i]))
if tmp in map_:
map_[tmp].append(strs[i])
else:
map_[tmp] = [strs[i]]
return [v for v in map_.values()]
菜鸟一枚,代码仅供参考,如有问题,望指正~
版权声明:本文为weixin_40510799原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。