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

【LeetCode】字母异位词分组

题目描述:

给你一个字符串数组,请你将字母异位词组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的所有字母得到的一个新单词。
示例 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] 仅包含小写字母

解题思路:

  1. 如果两个字符串是字母异位词,对这两个字符串进行排序后的结果是一样的
  2. 如果两个字符串是字母异位词,那么两个字符串中的字母进行统计的结果是一样的。

思路一:代码实现:

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {// 排序后的字符串作为keyunordered_map<string, vector<string>> mp;for(string& str: strs){string key = str;sort(key.begin(), key.end());mp[key].emplace_back(str);}vector<vector<string>> ans;for(auto it=mp.begin(); it != mp.end(); it++){ans.emplace_back(it->second);}return ans;}
};

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • [Meachines] [Easy] Blocky Jar包反编译
  • 【HarmonyOS】应用推送使用个推SDK如何实现?
  • MySQL面试篇章—MySQL锁机制
  • 【C++ —— 认识哈希和unordered_set、unordered_map的介绍及模拟】
  • 【学习笔记】Redis学习笔记——第17章 集群
  • Mojo简介
  • 打卡第22天------回溯算法
  • 深度学习系列70:模型部署torchserve
  • python 裁剪图片
  • 《梁宁产品思维30讲》是一门深入剖析产品思维、产品认知框架的课程
  • Windows11和Win10如何彻底永久关闭Windows defender
  • MySQL可重复读的隔离机制下是否彻底解决了幻读?
  • 云服务部署项目(Spring + Vue)
  • vue-router小结
  • Python3网络爬虫开发实战(1)爬虫基础
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 345-反转字符串中的元音字母
  • android 一些 utils
  • Angular 4.x 动态创建组件
  • canvas 绘制双线技巧
  • go语言学习初探(一)
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • Java 最常见的 200+ 面试题:面试必备
  • JavaScript 一些 DOM 的知识点
  • JAVA并发编程--1.基础概念
  • PV统计优化设计
  • Sequelize 中文文档 v4 - Getting started - 入门
  • V4L2视频输入框架概述
  • Vue.js 移动端适配之 vw 解决方案
  • 少走弯路,给Java 1~5 年程序员的建议
  • 我的zsh配置, 2019最新方案
  • 优化 Vue 项目编译文件大小
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • #define、const、typedef的差别
  • #mysql 8.0 踩坑日记
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • (23)Linux的软硬连接
  • (差分)胡桃爱原石
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (三分钟)速览传统边缘检测算子
  • (四)c52学习之旅-流水LED灯
  • (算法)N皇后问题
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (五)MySQL的备份及恢复
  • (学习总结16)C++模版2
  • (一)为什么要选择C++
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .NET 设计模式初探
  • .net知识和学习方法系列(二十一)CLR-枚举
  • .NET中的十进制浮点类型,徐汇区网站设计