Regular Expression Matching -- leetcode
2014-12-16 14:05
288 查看
Implement regular expression matching with support for
此题主要是 * 需要特殊处理。
它既能使其前驱字符匹配多个,同时也能匹配0个字符。
'.'and
'*'.
'.' Matches any single character.'*' Matches zero or more of the preceding element.
The matching should cover the entire input string (not partial).
The function prototype should be:
bool isMatch(const char *s, const char *p)
Some examples:
isMatch("aa","a") → false
isMatch("aa","aa") → true
isMatch("aaa","aa") → false
isMatch("aa", "a*") → true
isMatch("aa", ".*") → true
isMatch("ab", ".*") → true
isMatch("aab", "c*a*b") → true
此题主要是 * 需要特殊处理。
它既能使其前驱字符匹配多个,同时也能匹配0个字符。
class Solution { public: bool isMatch(const char *s, const char *p) { if (!*p) return !*s; if (*(p+1) == '*') { while (*s) { if (isMatch(s, p+2)) return true; if (*p == *s || *p =='.') { ++s; } else { return false; } } return isMatch(s, p+2); } else if (*s == *p || (*s && *p == '.')) return isMatch(++s, ++p); else return false; } };
相关文章推荐
- LeetCode之Regular Expression Matching
- LEETCODE: Regular Expression Matching
- 【LeetCode笔记】Regular Expression Matching
- leetcode第一刷_Regular Expression Matching
- Leetcode_regular-expression-matching
- Leetcode: Regular Expression Matching
- LeetCode | Regular Expression Matching
- [LeetCode] Regular Expression Matching
- leetcode -- Regular Expression Matching -- dp 重点
- Regular Expression Matching leetcode java
- 【LeetCode】Regular Expression Matching
- [LeetCode]-010-Regular_Expression_Matching
- [LeetCode] Regular Expression Matching, Solution
- [LeetCode] Regular Expression Matching(递归)
- [LeetCode]Regular Expression Matching
- leetcode Regular Expression Matching(Java)
- leetcode Regular Expression Matching
- 29-Regular Expression Matching-leetcode
- LeetCode-Regular Expression Matching
- [LeetCode]-010-Regular Expression Matching