首页 > 代码库 > Anagrams
Anagrams
Given an array of strings, return all groups of strings that are anagrams.
Note: All inputs will be in lower-case.
class Solution {
public:
vector<string> anagrams(vector<string> &strs)
{
vector<string> result;
map<string,int> mapindex;
for(int i=0;i<strs.size();i++)
{
string str=strs[i];
sort(str.begin(),str.end());
if(mapindex.find(str)==mapindex.end())
mapindex[str]=i;
else
{
if(mapindex[str]>-1)
{
result.push_back(strs[mapindex[str]]);
mapindex[str]=-1;
}
result.push_back(strs[i]);
}
}
return result;
}
};
public:
vector<string> anagrams(vector<string> &strs)
{
vector<string> result;
map<string,int> mapindex;
for(int i=0;i<strs.size();i++)
{
string str=strs[i];
sort(str.begin(),str.end());
if(mapindex.find(str)==mapindex.end())
mapindex[str]=i;
else
{
if(mapindex[str]>-1)
{
result.push_back(strs[mapindex[str]]);
mapindex[str]=-1;
}
result.push_back(strs[i]);
}
}
return result;
}
};
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。