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)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
天空之外1363 分钟前
Docker安装MySQL 8.4 LTS、Docker安装Redis 7.4.x、Docker安装MinIO
java·mysql·docker
fīɡЙtīиɡ ℡19 分钟前
深入学习JAVA并发编程(上)
java·开发语言·学习
zzzll111121 分钟前
HashMap、HashTable、ConcurrentHashMap 详细区别与深度解析
开发语言·python
老师我太想进步了202634 分钟前
C语言版讲解函数递归
c语言·开发语言
XS0301061 小时前
Spring AI:两种内置 Advisor 快速实现 RAG
java·人工智能·spring
mifengxing1 小时前
LeetCode 238 除自身以外数组的乘积|无除法O(n)时间+O(1)空间双解法
java·算法·leetcode
猿长大人1 小时前
C# | 函数式编程入门
开发语言·c#·.net
W_326001 小时前
Python 组合数据类型——序列(列表 & 元组)
开发语言·python
Billy121381 小时前
Day10-C++20 Ranges(上):惰性求值与组合式数据处理
开发语言·c++进阶学习
有点。1 小时前
C++深度优先搜索(二)
开发语言·c++·深度优先