zoukankan      html  css  js  c++  java
  • leetcode TOP100 字母异位词分组

    字母异位词分组

    给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。

    思路:

    一个map,将每个字符串字符进行记数,字符作为map的key,次数初始为零,以此来标识字符串
    另外一个map是通过上一个map来作为key,添加字符串。

    具体看代码。空间和效率都不咋地,23333、

    class Solution {
    public:
        vector<vector<string>> groupAnagrams(vector<string>& strs) {
         map<map<char,int>,vector<string>> res;
         for(int i=0;i<strs.size();i++)
         {
             map<char,int> d;
             for(int j=0;j<strs[i].size();j++)
             {
                 d[strs[i][j]]++;
             }
             res[d].push_back(strs[i]);
         }
         vector<vector<string>> good;
         for(map<map<char,int>,vector<string>>::iterator it=res.begin();it!=res.end();it++)
         {
                good.push_back(it->second);
         }
         return good;
            
        }
    };
    
  • 相关阅读:
    总结!!!总结!!!
    Beta 总结
    BETA-7
    BETA-6
    BETA-5
    BETA-4
    BETA-3
    华为云-软件产品案例分析
    BETA-2
    BETA-1
  • 原文地址:https://www.cnblogs.com/YenKoc/p/12779951.html
Copyright © 2011-2022 走看看