标签:
网址: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]-010-Regular Expression Matching
标签:
原文地址:http://blog.csdn.net/lane_l/article/details/45558455