Leetcode 49. Group Anagrams

文章作者:Tyan
博客:noahsnail.com  |  CSDN  | 

1. Description

Group Anagrams

2. Solution

  • Version 1
class Solution {
public:
    vector> groupAnagrams(vector& strs) {
        vector> result;
        unordered_map> m;
        for(string s : strs) {
            string temp = s;
            sort(temp.begin(), temp.end());
            if(m.find(temp) != m.end()) {
                m[temp].push_back(s);
            }
            else {
                vector anagrams;
                anagrams.push_back(s);
                m[temp] = anagrams;
            }
        }
        for(auto iter: m) {
            result.push_back(iter.second);
        }
        return result;
    }
};
  • Version 2
class Solution {
public:
    vector> groupAnagrams(vector& strs) {
        vector> result;
        unordered_map> m;
        for(string s : strs) {
            string temp = s;
            sort(temp.begin(), temp.end());
            m[temp].push_back(s);
        }
        for(auto iter: m) {
            result.push_back(iter.second);
        }
        return result;
    }
};

Reference

  1. https://leetcode.com/problems/group-anagrams/description/

你可能感兴趣的:(Leetcode 49. Group Anagrams)