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)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
小王不爱笑1324 小时前
IO 模型
开发语言·python
短剑重铸之日4 小时前
《ShardingSphere解读》07 读写分离:如何集成分库分表+数据库主从架构?
java·数据库·后端·架构·shardingsphere·分库分表
知我Deja_Vu4 小时前
【避坑指南】ConcurrentHashMap 并发计数优化实战
java·开发语言·python
AI+程序员在路上5 小时前
CANopen 协议:介绍、调试命令与应用
linux·c语言·开发语言·网络
2401_831824965 小时前
基于C++的区块链实现
开发语言·c++·算法
m0_518019485 小时前
C++与机器学习框架
开发语言·c++·算法
ZTLJQ5 小时前
深入理解逻辑回归:从数学原理到实战应用
开发语言·python·机器学习
qq_417695055 小时前
C++中的代理模式高级应用
开发语言·c++·算法
daidaidaiyu5 小时前
Spring IOC 源码学习 事务相关的 BeanDefinition 解析过程 (XML)
java·spring
波波0076 小时前
每日一题:.NET 中的“反射”是什么?
开发语言·.net