49. 字母异位词分组

无人久伴 提交于 2020-02-04 00:58:54

思路1:遍历,找到每个词的全排列(刚刚做了比较熟悉),然后检查在列表中则删除,继续遍历。–太复杂了。
思路2:对字符串进行排序,可检查是否具有相同的字母。然后使用了字典来存储。但是还是比较耗时。后面再看看有没有更简单的做法。
在这里插入图片描述
在这里插入图片描述

class Solution:
    def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
        dic={}
        for words in strs:
            b ="".join(sorted(words))
            if b not in dic:
                dic[b]=[words]
            else:
                dic[b].append(words)
        return list(dic.values())
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!