1002.查找常用字符
数字转字符 i+’a’
字符转字符串 使用string的构造函数 string(num,char) s生成包含num个char的字符串
用minfre保存字符出现的最少次数
先用minfre保存第一个字符串中字符出现的次数,再用fre保存后面字符串中字符出现的次数,minfre保存minfre和fre中的最小值
class Solution {
public:
vector<string> commonChars(vector<string>& words) {
if(words.size()==0)
return {};
vector<string> result;
int minrfre[26] = {0};
int s = words.size();
//保存第一个字符串中字符出现的次数
for(char c:words[0])
minrfre[c-'a']++;
//记录并比较后面字符串中字符出现的次数
for(int i = 1;i<s;i++)
{
int fre[26] = {0};
for(char c:words[i])
fre[c-'a']++;
for(int j =0;j<26;j++)
minrfre[j] = min(minrfre[j],fre[j]);
}
//根据记录的次数,将字符转换为字符串并添加至结果中
for(int i =0;i<26;i++)
{
for(int j =0;j<minrfre[i];j++)
{
result.push_back(string(1,i+'a'));
}
}
return result;
}
};