LeetCode第49题字母异位词分组

继续打卡算法题,今天学习的是LeetCode第49题字母异位词分组,这道题目是道中等题。算法题的一些解题思路和技巧真的非常巧妙,每天看一看算法题和解题思路,我相信对我们的编码思维和编码能力有一些提升。

分析一波题目

本题首先要理解 字母异位词 ,就是由相同的字母,组成的字符串

本题需要对 字母异位词 分组,我们可以使用map来实现。

编码解决

java 复制代码
class Solution {
    public List<List<String>> groupAnagrams(String[] strs) {
Map<String, List<String>> map = new HashMap<String, List<String>>();
        for (String str : strs) {
            char[] array = str.toCharArray();
            //排序,利于比较是否字母异位词
            Arrays.sort(array);
            String key = new String(array);
            List<String> list = map.getOrDefault(key, new ArrayList<String>());
            list.add(str);
            map.put(key, list);
        }
        return new ArrayList<List<String>>(map.values());

    }
}

总结

本题还是比较容易的,排序之后,使用hashmap存储搞定。

相关推荐
Swift社区19 小时前
LeetCode 465 最优账单平衡
算法·leetcode·职场和发展
聆风吟º20 小时前
【数据结构手札】空间复杂度详解:概念 | 习题
java·数据结构·算法
weixin_4450547220 小时前
力扣热题51
c++·python·算法·leetcode
计算机程序设计小李同学20 小时前
基于SpringBoot的个性化穿搭推荐及交流平台
java·spring boot·后端
是一个Bug20 小时前
50道核心JVM面试题
java·开发语言·面试
地平线开发者20 小时前
linux 常见稳定性问题分析方法
算法·自动驾驶
用户479492835691520 小时前
同事一个比喻,让我搞懂了Docker和k8s的核心概念
前端·后端
s砚山s20 小时前
代码随想录刷题——二叉树篇(九)
算法
地平线开发者20 小时前
大模型常见量化方法简介
算法·自动驾驶
li.wz1 天前
Spring Bean 生命周期解析
java·后端·spring