详解如何通过动态规划判断正则表达式是否匹配
1、基于动态规划思想实现算法,整个步骤如下:1. 创建一个动态规划二维数组 dp, dp[i][j] 表示字符串前 i 个字符和模式串前 j 个栓疠瑕愤字符的匹配情况;2. 逐个遍历字符串 s 的每个前缀子串,填充 dp,最终 dp 最后一个元素即代表整个字符串 s 和模式串 p 的匹配情况。
2、编写本地测试主方法。
3、运行本地测试主方法,观察控制台输出,符合预期,本地测试通过。
4、平台提交算法,测试通过。
5、算法复杂度分析:算法需要嵌套循环两个字符串,因此时间复杂度为 O(m*n) ,其中 m 为字符串的长度,n为模式串的长度;算法需要借助一个二维数组存储中间状态,因此空间复杂度也是 O(m*n)。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:72
阅读量:66
阅读量:46
阅读量:56
阅读量:35