1.优秀代码分析
class Solution {
public:
bool isMatch(string s, string p) {
int i = 0, j = 0, iStar = -1, jStar = -1;
while (i < s.size()) {
char s1 = s[i];
char p1 = p[j];
cout << s1 << " " << p1 << endl;
if (s[i] == p[j] || p[j] == ‘?’) {
++i; ++j;
}
else if (p[j] == ‘’) {
iStar = i;
jStar = j++;
}
else if (iStar >= 0) {
i = ++iStar;//遇到不相等额时候,找前面的星号来进行当前的匹配。
j = jStar + 1;
}
else return false;
}
while (j < p.size() && p[j] == '’)
++j;
return j == p.size();
}
};
好的代码的分析 Wildcard Matching 外卡匹配
最新推荐文章于 2020-07-05 09:55:56 发布