当前位置:网站首页>leetcode经典例题——49.字母异位词分组
leetcode经典例题——49.字母异位词分组
2022-08-04 09:03:00 【你食不食油饼】
题目描述:
思路:其实大家可以想想如果是int类型的数组,我们会怎么做,估计有不少小伙伴,脱口而出,遍历出来,直接进行排序,再分组;但为什么String类型的数组,咱们不可以去排序分组呢,哈哈哈这么一想大家是不是有种豁然开朗的感觉,我们只需要str.toCharArray() 把字符串变成字符数组,不就可以排序了,排序完再进行分组,至于分组就可以用Map集合来实现;
来看看代码:
public List<List<String>> groupAnagrams(String[] strs) {
if (strs.length <1) return new ArrayList<>();
Map<String,List<String>> map = new HashMap<>();
for (String str : strs) {
char[] chars = str.toCharArray();
Arrays.sort(chars);
if (!map.containsKey(String.valueOf(chars)))
map.put(String.valueOf(chars),new ArrayList<>());
map.get(String.valueOf(chars)).add(str);
}
return new ArrayList<>(map.values());
}
总结:第一次看到这题,我也陷入一个困境 ,有点无从下手的感觉,哥们也是第一次看到这种题,有点想硬算,去暴力匹配,但一想这种方法肯定超时;也是看的题解才有的思路哈哈哈,大家有时候算法解不出来适当看看题解,也是可以帮助自己思考的!
边栏推荐
猜你喜欢
NAT/NAPT地址转换(内外网通信)技术详解【华为eNSP】
TCP的四次挥手
注意力机制
【论文笔记】Delving into the Estimation Shift of Batch Normalization in a Network
94后字节P7晒出工资单:狠补了这个,真不错...
请你谈谈网站是如何进行访问的?【web领域面试题】
telnet远程登录aaa模式详解【华为eNSP】
Interview at 14:00 in the afternoon, I came out at 14:08 with my head down, asking too much...
[Punctuality Atomic STM32 Serial] Chapter 1 Learning Method of the Book Excerpted from [Punctuality Atomic] MiniPro STM32H750 Development Guide_V1.1
技术实现 | 图像检索及其在淘宝的应用
随机推荐
从零开始的tensorflow小白使用指北
【云驻共创】HCSD 大咖直播–就业指南
路由/三层交换机DHCP下发地址详解【华为eNSP】
ISO14443A读卡流程(作为示例参考)
cannot import name ‘import_string‘ from ‘werkzeug‘【bug解决】
sync-diff-inspector 使用实践
How many assertion methods are commonly used in JMeter?
MATLAB/Simulink快捷键
yuv420sp转jpg
TiDB升级与案例分享(TiDB v4.0.1 → v5.4.1)
基于cRIO-904X搭建Simulink与Labview环境
Explanation of spark operator
【论文笔记】Understanding Long Programming Languages with Structure-Aware Sparse Attention
【正点原子STM32连载】第一章 本书学习方法 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
ZbxTable 2.0 重磅发布!6大主要优化功能!
GBsae 8 c database using an error, how to do?
Convert callback function to Flow
layout manager
阿里云的数据库系统怎么升级更新的www.zgysffm.com怎么加快访问速度?
ShowMeAI —— Show u 三连