蓝桥杯JAVA--003

需求

2.代码

java 复制代码
    public class RegularExpressionMatching {
        public boolean isMatch(String s, String p) {
            if (p.isEmpty()) {
                return s.isEmpty();
            }

            boolean firstMatch =!s.isEmpty() && (s.charAt(0) == p.charAt(0) || p.charAt(0) == '.');

            if (p.length() >= 2 && p.charAt(1) == '*') {
                return isMatch(s, p.substring(2)) || (firstMatch && isMatch(s.substring(1), p));
            } else {
                return firstMatch && isMatch(s.substring(1), p.substring(1));
            }
        }

        public static void main(String[] args) {
            RegularExpressionMatching rem = new RegularExpressionMatching();
            String s = "aa";
            String p = "a";
            System.out.println(rem.isMatch(s, p)); // false

            s = "aa";
            p = "a*";
            System.out.println(rem.isMatch(s, p)); // true

            s = "ab";
            p = ".*";
            System.out.println(rem.isMatch(s, p)); // true
        }
    }
相关推荐
凌波粒19 分钟前
LeetCode--459.重复的子字符串(字符串/KMP算法)
算法·leetcode·职场和发展
宸津-代码粉碎机20 分钟前
Spring Boot 4.0 实战技巧全解析
java·大数据·spring boot·后端·python
Makoto_Kimur22 分钟前
Java Scanner 的 ACM 常用输入模板
java·数据结构·算法
0xDevNull25 分钟前
Spring 核心教程:@Component vs @Bean 深度解析
java·后端
逆境不可逃26 分钟前
【后端新手谈09】深入浅出短链接:从原理到实战开发
算法·面试·职场和发展
小碗羊肉28 分钟前
【从零开始学Java | 第三十二篇】方法引用(Method Reference)
java·开发语言
满满和米兜34 分钟前
【Java基础】- 集合-HashSet与TreeSet
java·开发语言·算法
网安INF1 小时前
数据结构第二章复习:线性表
java·开发语言·数据结构
米粒11 小时前
力扣算法刷题 Day 36
算法·leetcode·职场和发展
aq55356001 小时前
Laravel10.X核心特性全解析
java·开发语言·spring boot·后端