编程语言
首页 > 编程语言> > java--10正则表达式匹配

java--10正则表达式匹配

作者:互联网

java 刷题10--正则表达式匹配

题目

在这里插入图片描述

代码

class Solution {
    public boolean isMatch(String s, String p) {
        int sLen = s.length(), pLen = p.length();
		boolean[][] memory = new boolean[sLen+1][pLen+1];
		memory[0][0] = true;
		for(int i = 0; i <= sLen; i++) {
			for(int j = 1; j <= pLen; j++) {
				if(p.charAt(j-1) == '*') {
					memory[i][j] = memory[i][j-2]||(i > 0 && (s.charAt(i-1) == p.charAt(j-2)||p.charAt(j-2) == '.') && memory[i-1][j]);		
				}else memory[i][j] = i > 0 && (s.charAt(i-1) == p.charAt(j-1) || p.charAt(j-1) == '.')&& memory[i-1][j-1];			
			}//内循环结束
		}//外循环结束
		return memory[sLen][pLen];
    }
}

运行结果及解析

在这里插入图片描述
在这里插入图片描述

标签:10,java,charAt,--,int,boolean,&&,memory,pLen
来源: https://blog.csdn.net/Anrys/article/details/116016827