LeetCode:49. 字母异位词分组

49. 字母异位词分组

  • 1)题目
  • 2)代码
  • 3)结果

1)题目

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

示例 1:

输入: strs = [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]
输出: [[“bat”],[“nat”,“tan”],[“ate”,“eat”,“tea”]]

示例 2:

输入: strs = [“”]
输出: [[“”]]

示例 3:

输入: strs = [“a”]
输出: [[“a”]]

提示:

  • 1 <= strs.length <= 104
  • 0 <= strs[i].length <= 100
  • strs[i] 仅包含小写字母

2)代码

// 同字母组成的单词放一组
public static List<List<String>> groupAnagrams(String[] strs) {List<List<String>> list = new ArrayList<>();String[] strings = new String[strs.length];// 遍历获得排序字符后的字符串数组for (int i = 0; i < strs.length; i++) {char[] chars = strs[i].toCharArray();Arrays.sort(chars);strings[i] = String.valueOf(chars);}//遍历排序后的字符串数组,获取相同字符串的下标对应的原始字符串加入集合中for (int i = 0; i < strings.length; i++) {if (strings[i] != null) {List<String> list1 = new ArrayList<>();list1.add(strs[i]);for (int j = i+1; j < strings.length; j++) {if (strings[i].equals(strings[j])) {list1.add(strs[j]);strings[j] = null;}}list.add(list1);}}return list;
}

3)结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/661069.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tkMapper 通用mapper的批量更新 批量新增 官方实现 springboot项目 依赖引入

文章目录 场景官方插件源码解析项目细节小结 场景 在许多业务场景下&#xff0c;需要对tkMapper的功能进行增强&#xff0c;需要用到批量新增和批量更新&#xff08;这里是唯一主键去更新的&#xff09;&#xff0c;许多论文博客自己写的看起来并不行&#xff0c;我们这里就采…

python爬虫3

1.异常处理&#xff0c;使代码更加健壮 静态cookie可视绕过登录的限制 快代理是一个代理平台 # https://movie.douban.com/j/chart/top_list?type5&interval_id100%3A90&action& # start0&limit20# https://movie.douban.com/j/chart/top_list?type5&int…

【LNMP】RHEL8.3安装LNMP并配置freetds连接MSSQL

【RHEL8.3安装LNMP并配置freetds连接MSSQL】 1.1.安装MYSQL(安装LNMP前置条件): rpm -ivh mysql-community-client-8.3.0-1.el8.x86_64.rpm rpm -ivh mysql-community-common-8.3.0-1.el8.x86_64.rpm rpm -ivh mysql-community-icu-data-files-8.3.0-1.el8.x86_64.rpm rpm -…

352. 闇の連鎖(树上差分,LCA)

352. 闇の連鎖 - AcWing题库 传说中的暗之连锁被人们称为 Dark。 Dark 是人类内心的黑暗的产物&#xff0c;古今中外的勇者们都试图打倒它。 经过研究&#xff0c;你发现 Dark 呈现无向图的结构&#xff0c;图中有 N 个节点和两类边&#xff0c;一类边被称为主要边&#xff…

聊聊PowerJob的ServerDeployContainerRequest

序 本文主要研究一下PowerJob的ServerDeployContainerRequest ServerDeployContainerRequest tech/powerjob/common/request/ServerDeployContainerRequest.java Data NoArgsConstructor AllArgsConstructor public class ServerDeployContainerRequest implements PowerSe…

【数据结构】 归并排序超详解

1.基本思想 归并排序&#xff08;MERGE-SORT&#xff09;是建立在归并操作上的一种有效的排序算法,该算法是采用分治法&#xff08;Divide andConquer&#xff09;的一个非常典型的应用。 将已有序的子序列合并&#xff0c;得到完全有序的序列&#xff0c;即先使每个子序列有序…

Vue3的Props

Vue 3中的props是用于接收父组件传递的数据的属性。在Vue 3中&#xff0c;props的声明发生了一些改变&#xff1a; 使用props选项来声明props。之前的版本中使用props属性来声明&#xff0c;但在Vue 3中改为使用props选项。通过TypeScript或Flow来静态类型检查props。Vue 3允许…

关于智能指针

实现自己的智能指针 //智能指针 保证能做到资源的自动释放 //利用栈上的对象出作用域自动析构的特征&#xff0c;来做到资源的自动释放的 template<typename T> class CSmartPtr { public:CSmartPtr(T *ptr nullptr):mptr(ptr) {}~CSmartPtr() { delete mptr; } privat…

Spring实现事务(一)

Spring事务 .什么是事务事务的操作Spring中事务的实现准备工作创建表创建项目,引入Spring Web, Mybatis, mysql等依赖配置文件实体类 编程式事务(手动写代码操作事务)声明式事务(利用注解自动开启和提交事务) . 什么是事务 事务是⼀组操作的集合, 是⼀个不可分割的操作 在我们…

国产校准件

国产校准件 Ceyear系列校准件是矢量网络分析仪的测试附件&#xff0c;可大幅提高矢量网络分析仪的测试精度。规格品种丰富&#xff0c;涵盖多种同轴、波导校准件&#xff0c;校准精度高&#xff0c;重复性好 功能特点 校准件 校准模块可实现更精准的测量&#xff0c;满足您的测…

RK3588平台开发系列讲解(视频篇)H.264码流结构介绍

文章目录 一、 码流查看工具二、 I帧、 P帧、 B帧三、序列四、GOP, 即关键帧间隔五、片和宏块沉淀、分享、成长,让自己和他人都能有所收获!😄 📢H.264码流结构介绍。 一、 码流查看工具 ① H.264码流查看工具: Elecard_streamEye、 Elecard StreamEye Tools、 Special…

020 switch多选择结构

什么是switch多选择结构 switch语句中的变量类型为char的示例 char grade A; switch (grade){case A:System.out.println("成绩为A");break;case B:System.out.println("成绩为B");break;case C:System.out.println("成绩为C");break;case D:S…

2. HarmonyOS应用开发DevEcoStudio准备-1

2. HarmonyOS应用开发DevEcoStudio准备-1 下载 DevEco Studio 进入HUAWEI DevEco Studio产品页产品页。 单击下载列表右侧的按钮&#xff0c;下载 DevEco Studio。 安装 DevEco Studio 下载完成后&#xff0c;双击下载的 deveco-studio-xxxx.exe&#xff0c;进入 DevEco St…

基于SSM的高校社团管理系统

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML墨韵 我欲乘风归去 又恐琼楼玉宇 高处不胜寒 -苏轼 目录 一、项目简介 二、开发技术与环境配置 2.1 SSM框架 2.2 …

vue中使用stomp.js

简介 STOMP即Simple (or Streaming) Text Orientated Messaging Protocol&#xff0c;简单(流)文本定向消息协议&#xff0c;它提供了一个可互操作的连接格式&#xff0c;允许STOMP客户端与任意STOMP消息代理&#xff08;Broker&#xff09;进行交互。STOMP协议由于设计简单&am…

洞悉智能新纪元:从基础AI到AIGC直至GAI的深度探索

引言 随着科技发展步入快车道&#xff0c;人工智能&#xff08;Artificial Intelligence, AI&#xff09;正以前所未有的速度渗透进我们的日常生活。本篇文章将通过详实的案例分析&#xff0c;帮助读者把握基础AI的核心功能&#xff0c;领略AI生成内容&#xff08;AIGC&#x…

使用STM32的FMC/FSMC接口实现多路数据传输和并发操作的设计与应用

在基于STM32的系统中&#xff0c;FMC&#xff08;Flexible Memory Controller&#xff09;/FSMC&#xff08;Flexible Static Memory Controller&#xff09;接口可以用于实现多路数据传输和并发操作。通过合理的设计和应用&#xff0c;我们可以提高系统的数据处理速度和效率。…

C++(20):通过concept及nlohmann将数据转换为字符串

nlohmann可以自动兼容将C++的很多原生类型转换为json,甚至自定义类型也不需要太复杂的操作就可以转换为json,可以利用这一点将数据转换为string: #include <nlohmann/json.hpp> #include <string> #include <vector> #include <tuple> #include <…

P1228 地毯填补问题

地毯填补问题 题目描述 相传在一个古老的阿拉伯国家里&#xff0c;有一座宫殿。宫殿里有个四四方方的格子迷宫&#xff0c;国王选择驸马的方法非常特殊&#xff0c;也非常简单&#xff1a;公主就站在其中一个方格子上&#xff0c;只要谁能用地毯将除公主站立的地方外的所有地…

关键字:extern ;什么时候类 对象 方法 定义在.h中;

2 关键字:extern 结论就是 严格是extern应该和头文件一起使用, 但是项目简单就可以直接使用? 在简单的项目或者临时的测试代码中&#xff0c;直接使用extern关键字而不通过头文件来声明外部函数或变量是可以的&#xff0c;这种情况下可能会更快捷一些。但是&#xff0c;即使在…