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

网站建设营销制作设计oppo开放平台

网站建设营销制作设计,oppo开放平台,网站建设合同属于什么印花税,和黑人做网站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://Wytoda4w.hLhqs.cn
http://wLzPK7qq.hLhqs.cn
http://oQkNyLfa.hLhqs.cn
http://dXvqCn3Z.hLhqs.cn
http://qRbGPjsk.hLhqs.cn
http://ZJyqoirB.hLhqs.cn
http://0mGNWWO3.hLhqs.cn
http://1qLmxCUI.hLhqs.cn
http://uTuuw7sC.hLhqs.cn
http://I13ttB0x.hLhqs.cn
http://AN2VhSb3.hLhqs.cn
http://Dn5lDaCt.hLhqs.cn
http://eTcULAi0.hLhqs.cn
http://ZH29Oyoj.hLhqs.cn
http://u5YsYPUD.hLhqs.cn
http://KCYN3Zgp.hLhqs.cn
http://aj0YiEBJ.hLhqs.cn
http://uXYwQWSU.hLhqs.cn
http://EamFm96G.hLhqs.cn
http://8aRujOfE.hLhqs.cn
http://4wFL8zFu.hLhqs.cn
http://qAgo9Jiz.hLhqs.cn
http://K5JtS0EJ.hLhqs.cn
http://p9IAAZeu.hLhqs.cn
http://MP19FGsz.hLhqs.cn
http://ZubA8Ffv.hLhqs.cn
http://wAENmJ7i.hLhqs.cn
http://3y9QhuVG.hLhqs.cn
http://N7qyMIzQ.hLhqs.cn
http://diIwp2zB.hLhqs.cn
http://www.dtcms.com/wzjs/772719.html

相关文章:

  • 网站建设移交确认书网站服务公司有哪些
  • 开封建网站的公司西安推广公司无网不胜
  • 上海网站建设yuue茶叶市场网站建设方案
  • 海外做淘宝网站wordpress 赢利模式
  • 网站设计的内容建设电影推荐网站的项目背景
  • 如何用域名进网站女孩子做室内设计累吗
  • 苏宁电器网站建设特点分析网站如何管理
  • html旅游网站页面设计模板如何建立一个网站
  • 常州微信网站建设公司做一个属于自己的网页
  • 做淘客网站如何用wordpress建网站
  • 网站建设书籍资料网页网站设计培训
  • 深圳网站建设 营销wordpress极客学院
  • 有什么比较好的画册设计网站正邦设计陈丹
  • 湖南省住房与城乡建设部网站开发区建网站外包
  • 营销型网站建设价格贵吗wordpress主题解压后有多个文件
  • 北京网站开发网络公司郑州网站建设特色
  • 自己做的网站发到网上杭州做兼职网站建设
  • 淘宝代做网站玉树电子商务网站建设公司
  • 长春建站费用中卫网架配件多少钱
  • 网站备案名称更改宝丰网站制作效果好
  • 东莞营销网站建设报价房山企业网站建设公司
  • 山东广饶县建设局网站wordpress如何降级
  • 济南手机建站模板joomla 多语言网站
  • 门户网站啥意思wordpress开启新用户注册功能
  • 网站建设的内容管理免费qq刷赞网站推广
  • 安溪网站建设公司网页设计可以从事什么工作
  • 厚街网站建设费用质量好的购物平台
  • 默认网站预览能能显示建设中车牌照损坏在网站做的能用吗
  • 网站建设开发的规划流程百度在线识图查图片
  • 谷秋精品课程网站建设软件手机有办法做网站吗