leetcode-1023-驼峰式匹配
1023. 驼峰式匹配
tags: 双指针
只需判断对于每个\(query\),是否可以用\(pattern\)匹配它即可,每匹配到\(pattern\)中的一个大写字母,就使得匹配\(pattern\)的指针往后移动一个单位,若有大写字母且未与\(pattern\)匹配时,直接返回\(false\)。最后判断是否完全匹配完了\(pattern\)中的所有字母,即\(j==pattern.length()\)。
class Solution {
public List camelMatch(String[] queries, String pattern) {
List ans = new ArrayList<>();
for(var query : queries) {
ans.add(check(query, pattern));
}
return ans;
}
private boolean check(String query, String pattern) {
int j = 0;
for(int i = 0; i < query.length(); i++) {
if(j < pattern.length() && query.charAt(i) == pattern.charAt(j)) j++;
else if(query.charAt(i) < 'a') return false;
}
return j == pattern.length();
}
}