day-52 字母异位词分组


思路

将所有字符串转换为按字典序列排列的字符串然后存入哈希表中,便可判断是否为字母异位词

解题过程

首先将字符串转换为字符数组,再利用Arrays.sort()函数排序后重新转换为字符串存入哈希表中

Code

java 复制代码
class Solution {
    public List<List<String>> groupAnagrams(String[] strs) {
        Map<String,List<String>> map=new HashMap<>();
        for(String s:strs){
            char[] arr=s.toCharArray();
            Arrays.sort(arr);
            String ts=new String(arr);
            if(map.get(ts)!=null){
                List<String> tl=map.get(ts);
                tl.add(s);
                map.put(ts,tl);
            }else{
                List<String> tl=new ArrayList<>();
                tl.add(s);
                map.put(ts,tl);
            }
        }
        return new ArrayList<>(map.values());
    }
}

作者:菜卷
链接:https://leetcode.cn/problems/group-anagrams/solutions/2912222/zi-mu-yi-wei-ci-fen-zu-by-ashi-jian-chon-aiao/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
彧azz1 小时前
图的存储结构详解:邻接矩阵的原理、实现与应用
开发语言·数据结构·学习·php
IT_Octopus1 小时前
IntelliJ 本地日志路径自定义:`-DLOG_PATH=./logs` 为什么总“不听话“
java·log4j·intellij-idea
嵌入式学习菌2 小时前
Modbus‑RTU 数据类型分析
开发语言·单片机·bug
长征coder2 小时前
【无标题】
java·性能优化
matlab代码3 小时前
基于matlab数字图像处理的指纹识别系统【源码68期】
开发语言·matlab
新时代牛马3 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet3 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
matlab代码3 小时前
基于matlab的水果识别系统(苹果香蕉菠萝梨桃子)【源码65期】
开发语言·matlab
wuyk5553 小时前
从零吃透 MQTT 通信|第 8 章 FreeRTOS 多任务架构下 MQTT 工程架构,任务拆分、队列解耦、临界区保护
c语言·开发语言·stm32·学习·架构
weixin199701080163 小时前
[特殊字符]《跨境二手ERP对接Back Market:标准化API + 7~10工作日技术合规审核实录》(附Python源码)
开发语言·python·pandas