Leetcode 49 Group Anagrams
class Solution {
public:
vector<vector<string>> groupAnagrams(vector<string>& strs) {
unordered_map<string,multiset<string>> map;//should be multiset not set,for repetition
vector<vector<string>> res;
if (strs.empty()) {
return res;
}
for(auto str : strs){
string temp = str;
sort(temp.begin(),temp.end());
map[temp].insert(str);
}
for(auto strSet :map){
vector<string> singleRes(strSet.second.begin(),strSet.second.end());
res.push_back(singleRes);
}
return res;
}
};