【C++LeetCode】【热题100】字母异位词分组【中等】-不同效率的题解【3】

题目:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

暴力方法:
在这里插入图片描述

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {std::unordered_set<std::string> uniqueWord;//单词字符唯一化集合vector<vector<std::string>> res;//结果for(int i=0;i<strs.size();i++){//计算唯一化std::string tempStr=strs[i];std::sort(tempStr.begin(),tempStr.end());uniqueWord.insert(tempStr);}// std::cout<<uniqueWord.size()<<std::endl;//寻找字母异位词for(const auto & elem:uniqueWord){vector<std::string> tempRes;//std::cout<<strs.size()<<std::endl;for(vector<std::string>::iterator  it=strs.begin();it<strs.end();){// std::cout<<"elem:"<<elem<<std::endl;// std::cout<<"*it:"<<*it<<std::endl;std::string tempStr=*it;std::sort(tempStr.begin(),tempStr.end());//std::cout<<"*it:"<<elem<<"--"<<*it<<"--"<<tempStr<<std::endl;if(elem==tempStr){//取值// std::cout<<*it;tempRes.push_back(*it);it=strs.erase(it);//剔除值 使得在剩下的值中进行查询 提高效率 }else{it++;}}res.push_back(tempRes);}return res;}
};

优化方法:
在这里插入图片描述

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {std::unordered_map<std::string,vector<std::string>> uniqueWord;//单词字符唯一化集vector<vector<std::string>> res;for(int i=0;i<strs.size();i++){//计算唯一化std::string tempStr=strs[i];std::sort(tempStr.begin(),tempStr.end());uniqueWord[tempStr].push_back(strs[i]);}// std::cout<<uniqueWord.size()<<std::endl;//寻找字母异位词for(const auto & elem:uniqueWord){// std::cout<<elem<<std::endl;res.push_back(elem.second);}return res;}
};

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

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

相关文章

深入Android S (12.0) 探索Framework之输入子系统InputDispatcher的流程

Framework层之输入系统 第一篇 深入Android S (12.0) 探索Framework之输入系统IMS的构成与启动 第二篇 深入Android S (12.0) 探索Framework之输入子系统InputReader的流程 第三篇 深入Android S (12.0) 探索Framework之输入子系统InputDispatcher的流程 文章目录 Framework层…

微信小程序-界面提示框和消息

一.Loading加载框 小程序提供了wx.showLoading用来在加载界面的时候使用&#xff0c;比如加载图片和数据的时候可以使用。 常常和wx.hideLoading()配合使用&#xff0c;否则加载框一直存在。 其效果如下&#xff1a; 代码如下&#xff1a; //显示加载消息wx.showLoading({//提…

【机器学习】Lasso回归:稀疏建模与特征选择的艺术

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 Lasso回归&#xff1a;稀疏建模与特征选择的艺术引言一、Lasso回归简介1.1 基本…

丰臣秀吉-读书笔记五

如今直面自己一生中的最高点&#xff0c;加之平日里的觉悟与希冀&#xff0c;此时此地他“一定要死得其所”。 “武士之道&#xff0c;便是在死的瞬间决定一生或华或实。一生谨慎、千锤百炼&#xff0c;如果在死亡这条路上一步走错&#xff0c;那么一生的言行便全部失去真意&am…

帕金森的锻炼方式

帕金森病&#xff0c;这个看似陌生的名词&#xff0c;其实离我们并不遥远。它是一种常见的神经系统疾病&#xff0c;影响着许多中老年人的生活质量。虽然帕金森病目前尚无根治之法&#xff0c;但通过科学合理的日常锻炼&#xff0c;可以有效缓解病情&#xff0c;提高生活质量。…

录的视频太大怎么压缩?这几款软件真的很不错!

在数字化时代&#xff0c;视频已成为我们日常生活和工作中不可或缺的一部分。无论是记录生活点滴&#xff0c;还是制作工作汇报&#xff0c;视频都以其直观、生动的特点赢得了我们的青睐。然而&#xff0c;随着视频质量的提升&#xff0c;视频文件的大小也在不断增加&#xff0…

内容安全复习 2 - 网络信息内容的获取与表示

文章目录 信息内容的获取网络信息内容的类型网络媒体信息获取方法 信息内容的表示视觉信息视觉特征表达文本特征表达音频特征表达 信息内容的获取 网络信息内容的类型 网络媒体信息 传统意义上的互联网网站公开发布信息&#xff0c;网络用户通常可以基于网络浏览器获得。网络…

API低代码平台介绍5-数据库记录修改功能

数据库记录修改功能 在上篇文章中我们介绍了如何插入数据库记录&#xff0c;本篇文章会沿用上篇文章的测试数据&#xff0c;介绍如何使用ADI平台定义一个修改目标数据库记录的接口&#xff0c;包括 单主键单表修改、复合主键单表修改、多表修改&#xff08;整合前两者&#xff…

每日练题(py,c,cpp).6_19,6_20

检验素数 from math import sqrt a int(input("请输入一个数&#xff1a;")) for i in range(2,int(sqrt(a))):if a%i 0:print("该数不是素数")breakelse: print("该数是素数")# # 1既不是素数也不是合数 # #可以用flag做标志位 # b int(…

视频智能分析平台智能边缘分析一体机安防监控平台打手机检测算法工作原理介绍

智能边缘分析一体机的打手机检测算法是一种集成了计算机视觉和人工智能技术的先进算法&#xff0c;专门用于实时监测和识别监控画面中的打手机行为。以下是关于该算法的详细介绍&#xff1a; 工作原理 1、视频流获取&#xff1a; 智能边缘分析一体机首先通过连接的视频监控设…

【UIDynamic-动力学-附着行为-刚性附着 Objective-C语言】

一、接下来,我们来说这个附着行为啊, 1.我们之前举过例子,一个车坏了,另外一个车,拉着这个车,就是附着行为啊, 这个里边呢,我们新建一个项目, Name:09-附着行为-刚性附着, 附着行为呢,分为两个大类: 1)刚性附着 2)弹性附着 刚性附着,指的就是,两个物体之间…

三人同行免单模式:社交电商的新趋势

在当今社交电商日益繁荣的背景下&#xff0c;三人同行免单模式作为一种创新的购物激励机制&#xff0c;正逐渐受到消费者和品牌的青睐。该模式通过消费者之间的互动和分享&#xff0c;促进产品销售和品牌推广&#xff0c;实现消费者与品牌的双赢。 模式概述 三人同行免单模式的…

企业级WordPress开发 – 创建企业级网站的优秀技巧

目录 1 “企业级”一词是什么意思&#xff1f; 2 使用 WordPress 进行企业级 Web 开发有哪些好处&#xff1f; 3 使用 WordPress 进行企业级开发的主要好处 3.1 WordPress 可扩展、灵活且价格实惠 3.2 WordPress 提供响应式 Web 开发 3.3 WordPress 提供巨大的可扩展…

vue2 使用 tailwind css vscode 100%成功

环境 vue -V ---- vue/cli 5.0.8 node -v ----- v16.15.0 npm -v ----- 6.14.18 环境不一样可能不会100%成功哦 创建项目 vue create tailwind 选择vue2 修改package.json "dependencies": {"babel/eslint-parser": "^7.24.7"…

网络流量 数据包length计算

MTUMSSIP header(20 bytes)tcp header(20 bytes) lengthMTUEthernet header(14bytes) 其中MSS为Maximum Segment Size&#xff0c;即最大报文段长度&#xff0c;其受MTU大小影响&#xff0c;这里的MTU指的是三层的&#xff0c;二层的MTU固定为1500&#xff0c;不能修改。 MT…

PowerShell 是什么?它的作用都有哪些?

什么是 PowerShell PowerShell 是什么&#xff1f;PowerShell 是一种跨平台的任务自动化和配置管理框架&#xff0c;最初由微软开发并主要用于 Windows 环境。它结合了命令行界面和脚本语言功能&#xff0c;可以帮助用户执行系统管理任务和自动化流程。 PowerShell 的强大之处…

MySQL—索引—基础语法

目录 一、创建、查看以及删除索引的语法 &#xff08;1&#xff09;创建索引 1、会用到一个关键字&#xff1a;CREATE。 2、解释。 &#xff08;2&#xff09;查看索引 1、查看索引需要用到一个关键字&#xff1a;SHOW。 2、作用是去查看指定表中的所有索引。 &#xff…

html渲染的文字样式大小不统一解决方案

React Hooks 封装可粘贴图片的输入框组件&#xff08;wangeditor&#xff09;_react 支持图片拖拽的输入框-CSDN博客 这篇文章中的wangediter可粘贴图片的输入框&#xff0c;输入的文字和粘贴的文字在dangerouslySetInnerHTML渲染后出现了字体不统一的情况 在html中右键检查可…

postman测试接口使用

背景&#xff1a; 隔了一段时间没有用postman&#xff0c;有些忘记了&#xff0c;谨以此文来记录postman的使用&#xff0c;如有忘记就可以快速回忆 使用&#xff1a; 点击这个号&#xff0c;是创建接口页面 这里的复选框可供我们选择接口的rest方式 请求路径&#xff1a; …

一站式实时数仓Hologres整体能力介绍

讲师&#xff1a;阿里云Hologres PD丁烨 一、产品定位 随着技术的进步&#xff0c;大数据正从规模化转向实时化处理。用户对传统的T1分析已不满足&#xff0c;期望获得更高时效性的计算和分析能力。例如实时大屏&#xff0c;城市大脑的交通监控、风控和实时的个性化推荐&…