/*
对于每个str我们排序然后放到mp里面,然后定义一个map<int,vector<string>> mp2;
将出现过的单词放到mp2里面,最后在取出放到ans里既可以
*/
class Solution {
public:
vector<vector<string>> groupAnagrams(vector<string>& strs) {
map<string,int> mp1;
int cont1=1;
map<int,vector<string>> mp2;
for(auto str:strs){
string tmp=str;
sort(tmp.begin(),tmp.end());
if(!mp1[tmp]) mp1[tmp]=cont1++,mp2[mp1[tmp]].push_back(str);
else mp2[mp1[tmp]].push_back(str);
}
vector<vector<string>> ans;
for(auto mp3:mp2){
ans.push_back(mp3.second);
}
return ans;
}
};