zoukankan      html  css  js  c++  java
  • 刷题49. Group Anagrams

    一、题目说明

    题目是49. Group Anagrams,给定一列字符串,求同源词(包含相同字母的此)的集合。题目难度是Medium。

    二、我的做法

    题目简单,就不多说,直接上代码:

    class Solution{
    public:
        vector<vector<string>> groupAnagrams(vector<string>& strs) {
        	vector<vector<string>> res;
        	
            if(strs.size()<1) return res;
            unordered_map<string,vector<string>> ump;
    
            for(auto str:strs){
    		    string s = str; 
            	sort(s.begin(),s.end());
            	ump[s].push_back(str);
    		}
    
    		for ( auto it = ump.begin(); it != ump.end(); ++it ){
    			res.push_back(it->second);
    		}
    		
            return res;
        }
    };
    

    性能如下:

    Runtime: 32 ms, faster than 97.75% of C++ online submissions for Group Anagrams.
    Memory Usage: 19.1 MB, less than 73.13% of C++ online submissions for Group Anagrams.
    

    三、优化措施

    主要是用了unordered_map,也用到了sort排序,当然用map也可以。

    晕了,不做优化了。

    所有文章,坚持原创。如有转载,敬请标注出处。
  • 相关阅读:
    c copy
    IfcVertexLoop
    qt windeployqt 日志
    IfcPolyLoop
    IfcEdgeLoop
    IfcLoop
    QTableWidget
    QList删除元素
    matlab X的负次方函数绘制2
    matlab X的负次方函数绘制1
  • 原文地址:https://www.cnblogs.com/siweihz/p/12245560.html
Copyright © 2011-2022 走看看