参考链接
- https://leetcode-cn.com/problems/count-the-number-of-consistent-strings
题目描述
给你一个由不同字符组成的字符串 allowed 和一个字符串数组 words 。如果一个字符串的每一个字符都在 allowed 中,就称这个字符串是一致字符串。
请你返回words数组中一致字符串的数目。
解题思路
用哈希集合存储allowed字符串中的字母,然后逐个遍历words中的字符串是否有不存在与集合中的字母。
代码
class Solution {
public:
int countConsistentStrings(string allowed, vector<string>& words) {
unordered_set<char> allowed_chars;
int res = 0;
for (int i = 0; i < allowed.size(); i ++)
{
allowed_chars.insert(allowed[i]);
}
for (int i = 0; i < words.size(); i ++)
{
int j = 0;
for (; j < words[i].size(); j ++)
{
if (allowed_chars.count(words[i][j]) == 0)
{
break;
}
}
if (j == words[i].size())
{
res ++;
}
}
return res;
}
};