其他分享
首页 > 其他分享> > 【字符串】面试题 10.02. 变位词组

【字符串】面试题 10.02. 变位词组

作者:互联网

题目:

 

 

 

解答:

变位词利用sort后可相同 哈希表添加词下标即可 之后遍历哈希表根据下标添加变位词。

 1 class Solution {
 2 public:
 3     vector<vector<string>> groupAnagrams(vector<string>& strs) 
 4     {
 5           vector<vector<string>> vec;
 6           unordered_map<string,vector<int>> map;
 7 
 8           for(int i=0;i<strs.size();i++)
 9           {
10               string tmp=strs[i];
11               sort(tmp.begin(),tmp.end());
12               map[tmp].push_back(i);
13           }
14           for(auto it:map)
15           {
16               auto index=it.second;
17               vector<string>res;
18               for(auto num:index)
19               {
20                   res.push_back(strs[num]);
21               }
22               vec.push_back(res);
23           }
24         return vec;
25     }
26 };

 

标签:面试题,num,变位,res,back,vector,vec,10.02
来源: https://www.cnblogs.com/ocpc/p/12826563.html