一、思路:

对每一个字符串排序,然后将这个排序的字符串加到map里面,对于每一个新遍历的字符串就和map比较是否相等。

最开始用map,会出现超时,于是采用hash实现结构的unordered_map就不会超时,在50%的效率左右

二、代码:

class Solution {
public:vector<vector<string>> groupAnagrams(vector<string>& strs) {unordered_map<string, int> stringCountMap;for (string str : strs) {string temp = str;sort(temp.begin(), temp.end());if (stringCountMap.count(temp) > 0){res[stringCountMap[temp]].push_back(str);}else {stringCountMap.insert(pair<string, int>(temp, stringCountMap.size()));vector<string> resList = { str };res.push_back(resList);}}return res;}
private:vector<vector<string>> res;
};

leetCode C++ 49. 字母异位词分组 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。相关推荐

  1. leetCode C++ 二分查找 35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

    一.C++ int binarySearch(vector<int>& nums, int &target, int left, int right) {int mid = ...

  2. 【leetcode】给定一个整数数组和一个整数 k, 你需要在数组里找到不同的 k-diff数对。

    给定一个整数数组和一个整数 k, 你需要在数组里找到不同的 k-diff 数对.这里将 k-diff 数对定义为一个整数对 (i, j), 其中 i 和 j 都是数组中的数字,且两数之差的绝对值是 k ...

  3. 给定一个整数数组,判断是否存在重复元素。

    存在重复元素 给定一个整数数组,判断是否存在重复元素. 如果存在一值在数组中出现至少两次,函数返回 true .如果数组中每个元素都不相同,则返回 false 示例 1: 输入: [1,2,3,1] ...

  4. 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

    给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使用两遍. ...

  5. 第1题 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标

    package com.leetcode; import java.util.ArrayList; import java.util.HashMap; import java.util.List; i ...

  6. 整型数组 判断 java,给定一个整数数组,判断其中是否有3个数和为N

    借助集合将复杂度降到n2,但耗时还是比较长. import java.util.HashMap; import java.util.HashSet; import java.util.Scanner; ...

  7. 作业帮:给定一个整数数组,找出其中两个数相加等于目标值(去重set)

    题目描述 给定一个整数数组,找出其中两个数相加等于目标值输入 [1,3,5,7,9,11] 10输出 1,9 3,7 代码: import java.util.HashMap; import java ...

  8. 如何把一个整数转化成数组_「leetcode891」给定一个整数数组 A,考虑 A 的所有非空子序列...

    给定一个整数数组 A ,考虑 A 的所有非空子序列. 对于任意序列 S ,设 S 的宽度是 S 的最大元素和最小元素的差. 返回 A 的所有子序列的宽度之和. 由于答案可能非常大,请返回答案模 10^ ...

  9. 牛客 哔哩哔哩校招编程真题 给定一个整数数组,判断其中是否有3个数和为N 二分经典 三数之和

    题目描述 给定一个整数数组,判断其中是否有3个数和为N 输入描述: 输入为一行 逗号前为一个整数数组,每个元素间用空格隔开:逗号后为N 输出描述: 输出bool值 True表示存在3个和为N的数 Fa ...

最新文章

  1. Ubuntu 14.04 64位上安装Adobe reader 9.5.5
  2. 彻底理解js中this
  3. 软件安装被分成了两个iso文件怎么安装
  4. import导入工程时出现error:Description Resource Path Location Type Target runtime com.genuitec.runtime.gener
  5. Mockito的使用(二)——@InjectMocks、@Spy、@Mock
  6. Web渗透实验:基于Weblogic的一系列漏洞
  7. MySQL8权限,角色
  8. 个人博客网页设计_博客个人网页制作网页设计-1
  9. mysql二进制备份配置_mysql针对于二进制数据的备份
  10. linux nvidia驱动安装rpm,Fedora 下安装NVIDIA显卡驱动
  11. 小贝拉机器人是朋友_小朋友最爱的肉松美味来啦!咸香浓郁,肉松??控一定不要错过~...
  12. JS计算GridView里的TextBox
  13. 新手必须要注意的编程范式
  14. 防止网页被嵌入iframe广告代码
  15. python智能推荐系统教程_最新Python黑马头条推荐系统项目视频教程(精讲)
  16. python删除csv某一行_python删除csv行
  17. vivo和OPPO兄弟相煎从国内延伸至东南亚市场
  18. Windows下错误码全解析
  19. 2022年低压电工复训题库及在线模拟考试
  20. 哈工大计算机网络Mooc 最后的总结

热门文章

  1. SQL Server中事务日志自动增长对性能的影响
  2. *.tar.bz2文件解压
  3. Android 的 ramdisk.img、system.img、userdata.img 作用说明,以及UBoot 系统启动过程
  4. Androidz之Activity概要学习
  5. 安全研究人受够!再公布WordPress 3大外挂漏洞
  6. centos 修改ssh默认端口号
  7. git revert 的问题
  8. Jboss7或者wildfly部署war包的问题
  9. windows系统命令行下常用命令收集
  10. 主从同步出现一下错误:Slave_IO_Running: Connecting