Group Anagrams 群组错位词

xiaoxiao2021-02-28  36

最开始的做法因为超时无法通过最后一个样例,后受到启发map的第二个元素可以放置为vector<string>,通过。第一次代码,时间复杂度过大,不贴出来,也不加深自己的映像了

AC代码:(该方法超过36%的提交)

class Solution {public:    vector<vector<string>> groupAnagrams(vector<string>& strs) {        vector<vector<string>> ans;        if(strs.size()<1)            return ans;        map<string,vector<string>> maptest;        map<string,vector<string>>::iterator iter;        for(string s:strs)        {            string temp = s;            sort(temp.begin(),temp.end());            iter = maptest.find(temp);            if(iter==maptest.end()) //不存在            {                vector<string> store;                store.push_back(s);                maptest.insert(map<string,vector<string>>::value_type(temp,store));            }            else  //存在            {                iter->second.push_back(s);            }        }        for(iter=maptest.begin();iter!=maptest.end();++iter)        {            ans.push_back(iter->second);        }        return ans;    }};

转载请注明原文地址: https://www.6miu.com/read-2613710.html

最新回复(0)