LeetCode 第44题:通配符匹配

各位小伙伴们,今天我们来聊聊一个让人又爱又恨的题目:LeetCode第44题——通配符匹配(Wildcard Matching)。这道题可是相当有意思,因为它不仅考验你的逻辑思维,还能让你在编程的过程中,感受到那种解谜游戏般的乐趣。准备好你的小脑瓜,我们一起进入通配符匹配的世界吧!

文章目录

      • 题目描述
      • 解题思路
      • 方法一:动态规划
        • 动态规划步骤
        • 代码实现
        • 代码逻辑解析
      • 使用流程图展示代码实现逻辑
        • 动态规划法流程图
      • 方法二:双指针法
        • 双指针法步骤
        • 代码实现
        • 代码逻辑解析
      • 使用流程图展示代码实现逻辑
        • 双指针法流程图
      • 举例说明
        • 示例1
        • 示例2
        • 示例3
      • 总结

题目描述

给定一个字符串 s 和一个字符模式 p,实现一个支持 ?* 的通配符匹配,其中:

  • ? 可以匹配任何单个字符。
  • * 可以匹配任意字符串(包括空字符串)。

要求返回 s 是否匹配 p

举个栗子:

输入: s = "aa", p = "a"
输出: false

输入: s = "aa", p = "*"
输出: true

输入: s = "cb", p = "?a"
输出: false

输入: s = "adceb", p = "*a*b"
输出: tr

你可能感兴趣的:(leetcode,算法,数据结构,java)