力扣(LeetCode)算法_C++——字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

字母异位词 是由重新排列源单词的所有字母得到的一个新单词。

示例 1:

输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"]

输出: [["bat"],["nat","tan"],["ate","eat","tea"]]

示例 2:

输入: strs = [""]

输出: [[""]]

示例 3:

输入: strs = ["a"]

输出: [["a"]]

cpp 复制代码
vector<vector<string>> groupAnagrams(vector<string>& strs) {
    unordered_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;
};
相关推荐
OneQ6662 分钟前
C++自学笔记---指针在数组遍历中的应用
c++·笔记·算法
EnigmaCoder4 分钟前
蓝桥杯刷题周计划(第四周)
c++·算法·蓝桥杯
绿水毛怪.6 分钟前
蓝桥杯基础算法-字符串与集合
算法·职场和发展·蓝桥杯
悄悄敲敲敲1 小时前
C++第14届蓝桥杯b组学习笔记
c++·学习·算法·蓝桥杯
努力学习的小廉1 小时前
【C++11(下)】—— 我与C++的不解之缘(三十二)
开发语言·c++
佚明zj1 小时前
[ISP 3A ] AE的常用算法分析
算法·计算机视觉·接口隔离原则
山海不说话2 小时前
从零搭建微服务项目Pro(第7-1章——分布式雪花算法)
分布式·算法·spring·微服务·架构
Hello.Reader2 小时前
迭代器介绍与使用(四十一)
开发语言·c++
手握风云-2 小时前
优选算法的妙思之流:分治——归并专题
数据结构·算法·排序算法
梭七y2 小时前
【力扣hot100题】(063)搜索二维矩阵
算法·leetcode·职场和发展