美文网首页
[LeetCode]49、字母异位词分组

[LeetCode]49、字母异位词分组

作者: 河海中最菜 | 来源:发表于2019-08-02 23:11 被阅读0次

题目描述

给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。

示例:

输入: ["eat", "tea", "tan", "ate", "nat", "bat"],
输出:
[
["ate","eat","tea"],
["nat","tan"],
["bat"]
]

思路解析

利用一个字典,key为排序后的元祖(不可变),values为list,添加该数组

class Solution(object):
    def groupAnagrams(self, strs):
        ans = collections.defaultdict(list)
        for s in strs:
            ans[tuple(sorted(s))].append(s)
        return ans.values()
image.png

相关文章

网友评论

      本文标题:[LeetCode]49、字母异位词分组

      本文链接:https://www.haomeiwen.com/subject/lhcddctx.html