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

力扣Hot100--哈希表--day01

一,字母异位词分组

解题思路

给出的数组如下

["eat", "tea", "tan", "ate", "nat", "bat"]

按异位词分组后如下:

["eat","tea","ate"]

["tan","nat"]

["bat"]

看到这个例子,是不是首先要进行分组

分组的话要有分组的前提

我们先找到他们分完组后的共同点

我们发现他们排完序后都有唯一对应的值,如下:

["eat","tea","ate"]-->aet

["tan","nat"]-->ant

["bat"]-->abt

在看返回的结过,由上可知,每个数组都有唯一的值对应,那么很容易就可以想到,哈希表

key对应的是排序后的结果

代码

class Solution {public List<List<String>> groupAnagrams(String[] strs) {Map<String,List<String>> result = new HashMap<>();for(String str: strs){char[] array = str.toCharArray();Arrays.sort(array);String key = new String(array);if(!result.containsKey(key)){result.put(key,new ArrayList<>());}list.add(str);result.put(key,list);}return new ArrayList<List<String>>(result.values());}
}

首先用到哈希表,所以要创建哈希表

然后就要将数组里面的字符串进行排序了

那么要获取数组里面的每个字符串,先遍历出来

然后获取里面的每个字符进行排序

排完序后要当key吗,所以要拿个变量存储起来

获取当前key对应的列表,没有就创建

把当前字符加入列表

更新map中的列表

http://www.dtcms.com/a/553139.html

相关文章:

  • 鸿蒙技术知多点,技术深入、鸿蒙开发实战分享(一)——下载功能按钮与全局悬浮窗联动实战开发
  • 安科瑞暖通空调解决方案可覆盖分体空调、中央空调和多联机等类型空调系统,有效帮助用户实现空调系统节能降本
  • 用php做购物网站视频网站建设 翰臣科技公司
  • 本地音乐库嫌麻烦?PlaylistDL+cpolar打造“随身听”云端曲库!
  • 巩义网站建设定制电子商务系统网站开发总结
  • Excel怎么在下拉菜单中选择计算方式?
  • PHY6252国产蓝牙低成本透传芯片BLE5.2智能灯控智能家居
  • unity之线框模式
  • h5游戏免费下载:小飞鱼?
  • 【设计模式】享元模式(Flyweight)大白话讲解!
  • seo网站优化知识网站设计师的工作环境
  • 浅谈onlyoffice开发全流程(一、基础介绍)
  • 金仓KRDS云数据库服务管控平台:构建高效智能的数据库运维体系
  • GMI Cloud:如何构建全球化高性能分布式推理服务?
  • Linux入门攻坚——52、drbd - Distribute Replicated Block Device,分布式复制块设备-1
  • Threat Report ATTCK Mapper(TRAM)安装与配置手册
  • java后端初始化模版
  • WebGPU深度学习前端:基于浏览器的分布式模型推理
  • 深入浅出:增强现实(AR)技术全解析
  • 【进程间通信】--- 匿名管道,命名管道
  • 温岭网站建设公司百度问问首页登录
  • SpringBoot配置Redis
  • MinHashLSH 详解:高维数据相似性搜索与去重的关键技术
  • 数据驱动的架构设计:通过Enterprise Architect实现基于UML的架构治理
  • 旅游网页设计模板图及代码平度网站整站优化外包公司
  • Git的原理与使用 -- 远程操作
  • jetson开发板自编译编译pytorch
  • Git 仓库分支删除及清理指南
  • gitlab解决传过大文件后删除导致pack过大问题
  • sourcefare零基础学习,创建第一个扫描项目(服务端Git方式)