LintCode_154 Regular Expression Matching
来源:互联网 发布:丁丁装修软件 编辑:程序博客网 时间:2024/06/11 16:31
Implement regular expression matching with support for '.'
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)
Example
isMatch("aa","a") → falseisMatch("aa","aa") → trueisMatch("aaa","aa") → falseisMatch("aa", "a*") → trueisMatch("aa", ".*") → trueisMatch("ab", ".*") → trueisMatch("aab", "c*a*b") → true
思路是使用dp的方法, 如果下一个不是*,都好办。如果下一个是*, 就要考虑下重复几次的情况:
class Solution {public: /** * @param s: A string * @param p: A string includes "." and "*" * @return: A boolean */ bool isMatch(const char *s, const char *p) { // write your code here if( 0 == *p) return 0 == *s; if(*(p+1) != '*') { if(*p == *s || (*p) == '.' && (*s) != 0) { return isMatch(s+1, p+1); } return false; } else { while(*p == *s || ((*p) == '.' && (*s) != 0)) { if(isMatch(s, p + 2)) { return true; } s++; } return isMatch(s, p + 2); } }};
0 0
- LintCode_154 Regular Expression Matching
- LeetCode: Regular Expression Matching
- LeetCode: Regular Expression Matching
- leetcode Regular Expression Matching
- [Leetcode] Regular Expression Matching
- Regular Expression Matching
- Regular Expression Matching
- [LeetCode]Regular Expression Matching
- Regular Expression Matching
- LeetCode-Regular Expression Matching
- Regular Expression Matching
- 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
- Web---JSP注册技术的演绎(3代)-JSP/EJB/Servlet/POJO/JavaBean
- 51Nod-1001-数组中和等于K的数对
- Ubuntu 创建android手机能够连接的Wifi热点
- js中setInterval中出现的问题
- javaweb学习总结(四十)——编写自己的JDBC框架
- LintCode_154 Regular Expression Matching
- javaweb学习总结(四十一)——Apache的DBUtils框架学习
- LinCode_187 Gas Station
- 凌晨四点零九分
- javaweb学习总结(四十二)——Filter(过滤器)学习
- BFS print BT all path from root to leaf
- javaweb学习总结(四十三)——Filter高级开发
- Mac中安装tar包的Mysql服务
- javaweb学习总结(四十四)——监听器(Listener)学习