刷题之字母异位词(leetcode 哈希表)

https://leetcode.cn/problems/group-anagrams/

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

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {unordered_map<string,vector<string>>map;//哈希表键为排序后或者处理后的字符串,值为某一种字母异位词对应的字符串for(string str:strs){//构造字符串对应的键值,字母加字母出现次数int count[26]={0};for(char a:str){count[a-'a']++;}string key;for(int i=0;i<26;i++){if(count[i]!=0){key.push_back(i+'a');key.push_back(count[i]+'0');}}map[key].push_back(str);}vector<vector<string>>res;//for(auto p=map.begin;p!=map.end();p++)for(auto& p:map)//unordered_map的迭代器是一个指针,指向这个元素,通过迭代器来取得它的值。{res.emplace_back(p.second);//emplace_back构造及插入一个元素//res.push_back(p.second);}return res;}
};

直接排序:

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {unordered_map<string,vector<string>>map;//哈希表键为排序后或者处理后的字符串,值为某一种字母异位词对应的字符串for(string str:strs){string key=str;sort(key.begin(),key.end());map[key].push_back(str);}vector<vector<string>>res;//for(auto p=map.begin;p!=map.end();p++)for(auto& p:map)//unordered_map的迭代器是一个指针,指向这个元素,通过迭代器来取得它的值。{res.emplace_back(p.second);//emplace_back构造及插入一个元素//res.push_back(p.second);}return res;}
};

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

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

相关文章

LeetCode474:一和零

题目描述 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度&#xff0c;该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素&#xff0c;集合 x 是集合 y 的 子集 。 代码 /*抽象为两个维度的背包问题 dp[i][j…

认定6月7日截止!合肥市2024年第二批国家高新技术企业申报条件、流程和材料

合肥市2024年第二批国家高新技术企业认定截止在6月7日&#xff0c;关于合肥市高新技术企业认定条件、申报材料、流程的详细内容整理如下&#xff1a; 一、申报范围 &#xff08;一&#xff09;在我市行政区域内注册成立一年以上的居民企业&#xff0c;且符合《认定办法》第十一…

C++实现CSS布局管理器

/* Yoga 是一个针对 Web 标准的嵌入式布局引擎。 https://www.yogalayout.dev/docs/styling/ https://www.yogalayout.dev/playground 其它类似&#xff1a; https://github.com/Tencent/Taitank */ #include <yoga/Yoga.h> void applyLayout(YGNodeRef node) { //i…

渣土车上路识别报警摄像机

随着城市建设的不断推进&#xff0c;渣土车在城市道路上的数量也逐渐增加。然而&#xff0c;一些不法渣土车司机往往会超载、超速行驶或者闯红灯&#xff0c;给道路交通安全和城市环境带来了一定的隐患。为了有效监管渣土车上路行驶的情况&#xff0c;渣土车上路识别报警摄像机…

unity制作app(7)--panel control

根据用户的状态&#xff0c;在界面中显示不同的panel 1.新建一个脚本PanelControl&#xff0c;控制各个脚本的显示与隐藏 2.实现第一个逻辑判断功能&#xff1a;如果没有登记过信息&#xff0c;就直接跳转到登记界面&#xff0c;如果登记过&#xff0c;跳转到住界面。许多需要…

【C++小语法技巧】缺省参数和函数重载

在使用C语言编程过程中&#xff0c;C语言的要求之严格&#xff0c;编程过程之繁琐&#xff0c;大同小异的重复性工作&#xff0c;令C之父使用C语言编程时也深受其扰&#xff0c;于是乎C兼容C小语法诞生了 一、缺省参数 在C中&#xff0c;缺省参数&#xff08;也称为默认参数&a…

Windows server 2012 R2添加桌面图标

1、鼠标放到Window图标——右键——搜索 2、输icon——搜索 3、选择显示或隐藏桌面上的的通用图标 4、勾选需要添加到桌面的图标——确定

TimesFM: 预训练的时间序列基础模型

大模型技术论文不断&#xff0c;每个月总会新增上千篇。本专栏精选论文重点解读&#xff0c;主题还是围绕着行业实践和工程量产。若在阅读过程中有些知识点存在盲区&#xff0c;可以回到如何优雅的谈论大模型重新阅读。另外斯坦福2024人工智能报告解读为通识性读物。若对于如果…

【全开源】房屋出租出售预约系统支持微信小程序+H5+APP

一款基于FastAdminThinkPHPUniapp开发的房屋出租出售预约系统&#xff0c;支持小程序、H5、APP&#xff1b;包含房客、房东(高级授权)、经纪人(高级授权)三种身份。核心功能有&#xff1a;新盘销售、房屋租赁、地图找房、小区找房&#xff0c;地铁找房等方式。 特色功能&#…

基于物联网的智能病房设计-设计说明书

设计摘要&#xff1a; 本设计是基于物联网的智能病房设计&#xff0c;旨在提供更加智能化和便捷的监测和管理病人的环境和生理状态。通过集成多种传感器和通信模块&#xff0c;实现了温度、尿床和点滴异常的监测和提醒功能。具体而言&#xff0c;设计中采用了OLED显示屏来显示…

Python从0到100(二十二):用Python读写CSV文件

一、CSV文件概述 CSV&#xff0c;即逗号分隔值&#xff08;Comma Separated Values&#xff09;&#xff0c;是一种以纯文本形式存储表格数据的通用格式。它因其简洁和易于使用而广泛应用于数据交换&#xff0c;如在数据库、电子表格等应用程序中导入和导出数据。CSV文件的纯文…

Linux线程(四) 生产者消费者模型

目录 一、什么是生产者消费者模型 基本概念 优点以及应用场景 二、 基于阻塞队列的生产者消费者模型 三、POSIX信号量 四、基于环形队列的生产消费模型 一、什么是生产者消费者模型 Linux下的生产者消费者模型是一种经典的多线程或多进程编程设计模式&#xff0c;它用于解…