LeetCode--49. 字母异位词分组(哈希表)

49. 字母异位词分组(哈希表)

1. 题目描述

难度:中等
在这里插入图片描述

2. 题目分析

这道题的目的就是找出由相同字母组成的字符的集合。非常直观的方法就是利用哈希表进行筛选:
- 哈希表(Python)
本题由python中的字典实现。依次遍历字符串,将该字符串进行排序。以排序后的字符为键值,根据排序的结果依次放入字典的值中,最后输出字典的值即可。时间复杂度为O(n)。

3. Python实现

代码如下:

class Solution:
    def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
    	# 新建一个字典
        dic = {}
        # 遍历列表
        for s in strs:
            keys = "".join(sorted(s))
            if keys not in dic:
                dic[keys] = [s]
            else:
                dic[keys].append(s)
        return list(dic.values())

运行结果为:
在这里插入图片描述

发布了163 篇原创文章 · 获赞 188 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/qq_42580947/article/details/104880739