网址:https://leetcode.com/problems/regular-expression-matching/
题意:
输入的字符串是否被规则序列完全覆盖.
其中 . 代表一个任意字符
其中 * 代表任意个任意字符
分析:
其实就是对正则的一部分实现.
都是很实用的技能和技巧.
难点在于对于*的取舍.
*可以是0,也可以是任意值,但却未必是最大值.
尝试用迭代法做...但一直做不出来...
没办法,还是用递归解法吧.
解法:
对于*,就是可以重复0次,1次,n次.
所以只要把每种情况罗列出来即可.
但这样会超时,所以把一种特殊的情况,就是不断重复的a*a*a*a*,这种模式当作a*.
如此便解决了这个问题.
代码:
https://github.com/LiLane/leetcode/blob/master/java/010-RegularExpressionMatching-201505181521.java

本文探讨了LeetCode上的一道经典题目——正则表达式匹配。通过详细的解析,介绍了如何处理包含.任意字符及*任意数量的任意字符的规则序列,并通过递归方法解决这一难题。

218

被折叠的 条评论
为什么被折叠?



