驼峰式匹配(medium)"/>
[前缀树]leetcode1023:驼峰式匹配(medium)
题目:
题解:
本题虽然在前缀树的tag中,但是感觉和前缀树也没啥关系啊!如果各位有用前缀树做出来的,告诉我下,谢谢。
算法:遍历查询项的每个单词,然后与模式串中的字符匹配,分为三种情况:
- 1)查询项的大写字符与模式串的大写字符匹配,两个字符串继续向后匹配
- 2)查询项的大写字符与模式串的大写字符部匹配,表示查询项与模式串匹配不成功(因为查询串不能除了模式串的大写字符)
- 3)其他情况,模式串移动到下一个字符,继续下一次循环
代码如下:
class Solution {
public://解法:暴力法,遍历出每个query,然后于pattern比较就好了vector<bool> camelMatch(vector<string>& queries, string pattern) {vector<bool> result;int psize=pattern.size();for(const auto& query:queries){int i=0,j=0,qsize=query.size();while(i<qsize){if(j<psize&&query[i]==pattern[j]){++i;++j;}else if(query[i]>='A'&&query[i]<='Z')break;//查询串有多余的大写字符,直接退出else ++i;}//模式串和查询串匹配成功if(i>=qsize&&j>=psize)result.push_back(true);else result.push_back(false);}return result;}
};
更多推荐
[前缀树]leetcode1023:驼峰式匹配(medium)
发布评论