【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())
相关推荐
Fevered 路小小呀!2 分钟前
mediapipe新版本怎么玩--面部特征检测
人工智能·python·计算机视觉
geyasi6 分钟前
【Flask】四、flask连接并操作数据库
数据库·python·flask
DeepModel9 分钟前
机器学习降维:多维尺度分析 MDS
人工智能·python·机器学习
GinoWi22 分钟前
Chapter 8 Python中的类
python
Thomas.Sir26 分钟前
第六章:RAG知识库开发之【深入浅出RAG使用效果评估:从指标到实践】
人工智能·python·ai·rag·效果评估
菜菜的顾清寒28 分钟前
力扣HOT100(16)除了自身以外数组的乘积
算法·leetcode·职场和发展
老虎062740 分钟前
LeetCode热题100 刷题笔记(第六天)双指针 「 盛最多水的容器」
笔记·算法·leetcode
飞Link40 分钟前
深入挖掘 LangChain Community 核心组件,从数据接入到企业级 RAG 实战
开发语言·python·langchain
SuperEugene42 分钟前
Python + venv + VSCode:前端工程师 AI 转型入门 | 基础篇
前端·人工智能·vscode·python
IT空门:门主1 小时前
Anaconda & uv 常用命令速查手册
python·uv