蓝桥杯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
        }
    }
相关推荐
C137的本贾尼4 分钟前
Spring AI Alibaba 开箱:国产百炼大模型初体验
java·人工智能·spring
金銀銅鐵36 分钟前
[Java] 如何理解 class 文件中字段的 access flags?
java·后端
小短腿的代码世界44 分钟前
Qt国际化深度解析:从源码到企业级多语言实践
java·数据库·qt
凌冰_1 小时前
IDEA 集成Claude Code
java·ide
SXJR1 小时前
Java中的Cross-Encoder模型解决方案
java·开发语言
彦为君1 小时前
JavaSE-11-BIO/NIO/AIO(多人聊天室)
java·开发语言·python·ai·nio
计算机安禾1 小时前
【c++面向对象编程】第43篇:可变参数模板(C++11):优雅处理不定长参数
java·开发语言·c++
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第69题】【JVM篇】第29题:GC Roots 有哪些?
java·开发语言·jvm·面试
William Dawson1 小时前
【通俗易懂!Spring四大核心注解源码解读:@Configuration、@ComponentScan、@Import、@EnableXXX实战】
java·后端·spring
Tigshop开源商城2 小时前
Tigshop 开源商城系统 JAVA v5.8.28 版本发布|『角色权限管理+店铺后台跳转逻辑』优化
java·开源商城系统·tigshop