【LeetCode】49. 字母异位词分组

1 问题

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

示例 1:

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

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

示例 2:

输入: strs = [""]

输出: [[""]]

示例 3:

输入: strs = ["a"]

输出: [["a"]]

2 答案

这题直接不会

官方解,使用字典记录,其中字典的键,必须是不可变类型,所以用tuple。

python 复制代码
class Solution:
    def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
        dict = {}
        for s in strs:
            key = tuple(sorted(s))  # 字典的键用tuple
            dict[key] = dict.get(key,[]) + [s]  # get(key,[]) get 不到则返回[]
        return list(dict.values())
相关推荐
cqbzcsq1 分钟前
蛋白质功能预测模型DAMPE论文阅读报告
论文阅读·人工智能·python·深度学习·生物信息学
转转技术团队5 分钟前
回收团队基于Cursor集成MCP的智能代码修复提示词生成实践
人工智能·python·程序员
杜子不疼.10 分钟前
【LeetCode 852 & 162_二分查找】山脉数组的峰顶索引 & 寻找峰值元素
算法·leetcode·职场和发展
石头dhf16 分钟前
大模型配置
开发语言·python
南科1号16 分钟前
Tushare数据来源分析一例
python
API技术员30 分钟前
京东API接口:如何高效获取商品详情与SKU信息
python
sort浅忆1 小时前
deeptest执行接口脚本,添加python脚本断言
开发语言·python
冷月半明1 小时前
trea solo,让我从牛马外包翻身当“甲方”
python·trae
Ka1Yan1 小时前
[二叉树] - 代码随想录:二叉树的统一迭代遍历
数据结构·算法·leetcode
superman超哥1 小时前
仓颉借用检查器工作原理深度解析
c语言·开发语言·c++·python·仓颉