当前位置: 首页 > web >正文

leetcode HOT100(49.字母异位词分组)

在这里插入图片描述
这个题我们可以想到,如果我们将这个字符串数组里面的字符串,每个都排好序,那么如果这两个字符串如果是字母异位词,那么他们排序后就会相等。我们可以创建一个HashMap,遍历字符串数组,然后将遍历取到的字符串转化为字符数组,然后进行排序。排序后再转化为字符串,将其作为key。然后我们再去map集合里面根据这个key去取list集合(如果不存在就创建一个空集合)。之后将当前的字符串存入到list集合中,最后再将这个key和这个list集合(value)存入map集合。

代码演示:

 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);//用key从map里面取,如果取不到创建一个新的空listList<String> list= map.getOrDefault(key,new ArrayList<String>());//将当前字符串写入list集合list.add(str);//将key和list放入map集合map.put(key,list);}return new ArrayList<List<String>>(map.values());}
}
http://www.xdnf.cn/news/13688.html

相关文章:

  • 怎样解决在ubuntu 22.04上QT: DataVisualization控件显示黑屏的问题
  • 触觉智能RK3576核心板工业应用之软硬件全国产化,成功适配开源鸿蒙OpenHarmony5.0
  • LangGraph--带记忆和工具的聊天机器人
  • Modbus TCP转DeviceNet网关连接ABB变频器配置案例
  • 破解关键领域软件测试“三重难题”:安全、复杂性、保密性
  • 电脑、手机长时间不关机可以吗
  • Rabbitmq后台无法登录问题解决
  • Genio 1200 Evaluation MT8395平台安装ubuntu
  • 全栈监控系统架构
  • 22、话题重名及解决方案
  • 销售预测的方法与模型(二)丨商品与库存分类——基于数据模型运营的本质和底层逻辑销售
  • Spring MVC 入门案例:从代码到原理的深度剖析
  • Docker 构建文件代码说明文档
  • qemu-kvm+virt-manager创建虚拟机设置桥接模式
  • 告别手动做PPT!4款AI工具实现自动化生成
  • Python—turtle绘图库使用方法
  • 【论文阅读笔记】高光反射实时渲染新突破:3D Gaussian Splatting with Deferred Reflection 技术解析
  • 技术专栏|LLaMA家族——模型架构
  • 算法学习笔记:2.大根堆算法——数据流的中位数​​or最后一块石头的重量
  • 【Redisson】锁可重入原理
  • Redis初识第一期
  • 从0到1构建高并发秒杀系统:实战 RocketMQ 异步削峰与Redis预减库存
  • 接口测试常用工具及测试方法(基础篇)
  • 【MySQL】视图
  • 电话号码的字母组合
  • 12.ack,ACK 的区别与含义
  • 【项目实践】SMBMS(Javaweb版)(五)供应商管理模块
  • 时间同步技术在电力系统中的应用二
  • 现代建筑中空气流向管理系统SKGL的智能化趋势
  • 稳定币的监管