[LeetCode]010.Regular Expression Matching

Question

Implement regular expression matching with support for '.' and '*'.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
'.' 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

Solution

  • C
1
2
3
bool isMatch(char* s, char* p) {

}
  • C++
1
2
3
4
5
6
class Solution {
public:
bool isMatch(string s, string p) {

}
};
  • Java
1
2
3
4
5
public class Solution {
public boolean isMatch(String s, String p) {

}
}
  • JavaScript
1
2
3
4
5
6
7
8
/**
* @param {string} s
* @param {string} p
* @return {boolean}
*/
var isMatch = function(s, p) {

};
  • Python
1
2
3
4
5
class Solution:
# @param {string} s
# @param {string} p
# @return {boolean}
def isMatch(self, s, p):
  • Swift
1
Hello World
坚持原创技术分享,您的支持将鼓励我继续创作!