当前位置:网站首页>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());
}总结:第一次看到这题,我也陷入一个困境 ,有点无从下手的感觉,哥们也是第一次看到这种题,有点想硬算,去暴力匹配,但一想这种方法肯定超时;也是看的题解才有的思路哈哈哈,大家有时候算法解不出来适当看看题解,也是可以帮助自己思考的!
边栏推荐
猜你喜欢
随机推荐
binder通信实现
学会 Arthas,让你 3 年经验掌握 5 年功力
王爽汇编语言第四章:第一个程序
外包干了四年,秋招终于上岸了
C# DirectoryInfo类
MATLAB绘图总结
Grafana9.0发布,Prometheus和Loki查询生成器、全新导航、热图面板等新功能!
抬升市场投资情绪,若羽臣是否还需“自身硬”?
注意力机制
Oracle怎么获取当前库或者同一台服务器上某几个库的数据总行数?
Recommend several methods that can directly translate PDF English documents
ansible部署脚本--亲测可用无坑
It is found that several WRH tables are locked, what should I do?
Anton Paar安东帕密度计比重计维修DMA35性能参数
sql在字段重复时 对某个字段根据最新时间取数
【正点原子STM32连载】第三章 开发环境搭建 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
VRRP + MSTP configuration, huawei eNSP experiment 】 【
Detailed explanation of switch link aggregation [Huawei eNSP]
Detailed explanation of NAT/NAPT address translation (internal and external network communication) technology [Huawei eNSP]
TiDB升级与案例分享(TiDB v4.0.1 → v5.4.1)









