Regular Expression Matching--LeetCode
来源:互联网 发布:散打教学软件 编辑:程序博客网 时间:2024/06/08 07:08
Regular Expression Matching
(原题链接:点击打开链接)
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)Some examples:isMatch("aa","a") → falseisMatch("aa","aa") → trueisMatch("aaa","aa") → falseisMatch("aa", "a*") → trueisMatch("aa", ".*") → trueisMatch("ab", ".*") → trueisMatch("aab", "c*a*b") → true
Solution:
使用递归算法
class Solution {public: bool isMatch(string s, string p) { if (p.length() == 0) return s.length() == 0; if (p[1] == '*') { //isMatch("aab", "c*a*b") → true,返回isMatch("aab", "a*b") //isMatch("aa", "a*") → true,返回isMatch("a", "a*") //isMatch("aa", ".*") → true,返回isMatch("a", ".*") //isMatch("a", ".*") → true,返回isMatch("", "") return isMatch(s, p.substr(2)) || (s.length() != 0 && (s[0] == p[0] || p[0] == '.') && isMatch(s.substr(1), p)); } else { if (s.length() != 0 && (s[0] == p[0] || p[0] == '.')) return isMatch(s.substr(1), p.substr(1)); return false; } }};
阅读全文
0 0
- LeetCode: Regular Expression Matching
- LeetCode: Regular Expression Matching
- leetcode Regular Expression Matching
- [Leetcode] Regular Expression Matching
- [LeetCode]Regular Expression Matching
- LeetCode-Regular Expression Matching
- Regular Expression Matching LeetCode
- 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
- Leetcode: Regular Expression Matching
- leetcode:Regular Expression Matching
- (webstorm的css编写插件)Emmet:HTML/CSS代码快速编写神器
- 迁移学习全面概述
- 针对Unity NGUI图集的Alpha通道分离优化
- SDL系列讲解(十二)创建窗口流程
- 面试题24:二叉搜索树的后序遍历序列
- Regular Expression Matching--LeetCode
- poj 2965 The Pilots Brothers' refrigerator 【dfs+枚举】【双十一大礼包】【刷题计划】
- 预设置只读文件系统squashfs上的文件的扩展属性的方法
- 惊群
- GAN和DCGAN的讨论
- android SDL系列讲解(十三) 播放音乐库 SDL_mixer教程
- iscsi:IO操作流程(二)
- 1015. 德才论 (25)
- 八数码