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

wordpress 中表格 宽度周口seo公司

wordpress 中表格 宽度,周口seo公司,上海 做网站,wordpress免费网站模板下载1.字母异位词分组 给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 方法一&#xff1a;字母排序 class Solution {public List<List<String>> groupAnagr…

1.字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

字母异位词 是由重新排列源单词的所有字母得到的一个新单词。
在这里插入图片描述

方法一:字母排序

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

class Solution {public List<List<String>> groupAnagrams(String[] strs) {// 处理边界情况:如果输入数组为空,直接返回空列表if (strs.length == 0) return new ArrayList<>();// 创建哈希表:键为排序后的字符数组(字符串形式),值为该异位词组对应的字符串列表Map<String, List<String>> map = new HashMap<>();// 遍历输入的每个字符串for (String str : strs) {// 将字符串转换为字符数组,以便进行排序char[] chars = str.toCharArray();// 对字符数组进行排序(例如:"eat" → ['a', 'e', 't'])// 排序后相同异位词的字符数组顺序相同,可作为相同的键Arrays.sort(chars);// 将排序后的字符数组转换为字符串,作为哈希表的键// 例如:['a', 'e', 't'] → "aet"String key = String.valueOf(chars);// 检查哈希表中是否已存在该键// 如果不存在,创建一个新的空列表,并与该键关联if (!map.containsKey(key)) {map.put(key, new ArrayList<>());}// 将原始字符串添加到对应键的列表中// 例如:"eat" 和 "tea" 都会被添加到键 "aet" 对应的列表中map.get(key).add(str);}// 将哈希表中的所有值(列表集合)转换为一个大列表并返回// 每个子列表包含一组互为异位词的字符串return new ArrayList<>(map.values());}
}

方法二 字符计数法

在这里插入图片描述

时间复杂度和空间复杂度

在这里插入图片描述
在这里插入图片描述

class Solution {public List<List<String>> groupAnagrams(String[] strs) {// 创建一个哈希表,用于分组异位词// 键:由字母和出现次数组成的字符串(如 "a1b2")// 值:所有符合该模式的字符串列表(如 ["abb", "bab", "bba"])Map<String , List<String>> map =new HashMap<>();// 遍历输入的每个字符串for(String str : strs){ // 创建一个长度为26的数组,统计每个字母的出现次数// counts[0] 对应 'a' 的次数,counts[1] 对应 'b' 的次数,依此类推int[] counts =new int[26]; int length =str.length();// 遍历字符串中的每个字符,统计次数for(int i=0;i<length;i++){// 将字符转换为数组索引:'a' 变成 0,'b' 变成 1,...,'z' 变成 25// 对应位置的计数加1counts[str.charAt(i)- 'a' ] ++;}StringBuilder sb = new StringBuilder();// 生成用于哈希表的键// 按字母顺序拼接每个出现过的字母及其次数(如 "a1b2")for(int i= 0 ; i < 26 ; i++ ){if(counts[i]!= 0){// 添加字母(如 'a')sb.append((char)('a'+i));// 添加该字母的出现次数(如 2)sb.append(counts[i]);}}String key = sb.toString();// 将当前字符串添加到对应的分组中// 如果键不存在,创建一个新的列表// 如果键已存在,获取已有的列表List<String> list=map.getOrDefault(key,new ArrayList<>());list.add(str);map.put(key,list);}// 返回哈希表中所有的值(即所有分组)return new ArrayList<>(map.values());}}
http://www.dtcms.com/wzjs/520286.html

相关文章:

  • 软件开发服务平台知乎seo排名的搜软件
  • wordpress get_search_form()安徽seo团队
  • 推荐5家知名好口碑关键词优化地址
  • 网站交互界面宁波网络推广优化公司
  • 全国疫情发布会最新情况宁波关键词优化时间
  • 网站开发时遇到的问题如何推广一个平台
  • 专门做设计的网站网络站点推广的方法有哪些
  • 南宁网站建设免费推广国外免费推广平台有哪些
  • 深圳营销型网站建设优化安顺seo
  • 上海网站建设索王道下拉朋友圈软文范例
  • 做本地化的返利网站怎么样营销型网站方案
  • 阳谷网站建设公司百度快照推广有效果吗
  • 漯河网站建设zrgu百度总部
  • 闸北做网站seo引擎
  • 能进封禁网站的浏览器推广引流工具
  • 今天发生了什么重大新闻东莞有限公司seo
  • 网站排名软件多浏览器做个网站需要多少钱
  • 档案网站建设思考博客网站登录入口
  • 网站根目录验证文件google chrome浏览器
  • 杨中市网站建设天天seo站长工具
  • 衡水建设网站seo建站网络公司
  • 使用c#语言建设网站优点微商怎么做推广加好友
  • 管理有限公司网站设计google广告投放
  • 专门做卫生间效果图的网站站长工具a级
  • 网站内容建设是什么iis7站长工具
  • 怎么做相亲网站你就知道
  • 免费服装网站模板网站关键词优化价格
  • 国外优秀画册设计网站外贸国际网站推广
  • 石家庄网站建设燕杰手机360优化大师官网
  • 沈阳做网站优化的公司哪家好百度关键词权重查询