一、题目
二、代码
class Solution
{
public:
vector<string> commonChars(vector<string>& words)
{
int i,j;
vector<string> return_vector;
int hash_char[26]={0,};
// std::cout<<"words.size() "<<words.size()<<std::endl;
// std::cout<<"words[1].size() "<<words[1].size()<<std::endl;
for(i=0;i<words.size();i++)//构建哈希
{
int temp_char[26]={0,};
for(j=0;j<words[i].size();j++)
{
temp_char[words[i][j]-'a']++;
}
if(i==0) //第一次
{
for(j=0;j<26;j++) hash_char[j]=temp_char[j];
}
else //其余
{
for(j=0;j<26;j++) hash_char[j]=min(hash_char[j],temp_char[j]);
}
}
//for(i=0;i<26;i++) std::cout<<"hash_char[i] "<<" "<<i<<" "<<hash_char[i]<<std::endl;
for(i=0;i<26;i++)
{
while(hash_char[i]>0)
{
string s(1,i + 'a');
return_vector.push_back(s);
hash_char[i]--;
}
}
return return_vector;
}
};