44. 通配符匹配
困难
相关标签
相关企业
给你一个输入字符串 (s) 和一个字符模式 (p) ,请你实现一个支持 '?' 和 '*' 匹配规则的通配符匹配:
'?' 可以匹配任何单个字符。
'*' 可以匹配任意字符序列(包括空字符序列)。
判定匹配成功的充要条件是:字符模式必须能够 完全匹配 输入字符串(而不是部分匹配)。
class Solution {
public boolean isMatch(String s, String p) {
int m = s.length();
int n = p.length();
boolean[][] dp = new boolean[m + 1][n + 1];
dp[0][0] = true;
for (int i = 1; i <= n; ++i) {
if (p.charAt(i - 1) == '*') {
dp[0][i] = true;
} else {
break;
}
}
for (int i = 1; i <= m; ++i) {
for (int j = 1; j <= n; ++j) {
if (p.charAt(j - 1) == '*') {
dp[i][j] = dp[i][j - 1] || dp[i - 1][j];
} else if (p.charAt(j - 1) == '?' || s.charAt(i - 1) == p.charAt(j - 1)) {
dp[i][j] = dp[i - 1][j - 1];
}
}
}
return dp[m][n];
}
}
作者:力扣官方题解
链接:https://leetcode.cn/problems/wildcard-matching/solutions/315802/tong-pei-fu-pi-pei-by-leetcode-solution/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
这个地板不太烫
- 粉丝: 96
- 资源: 171
最新资源
- NativeExcel v3.1.0 for Delphi 12.X.rar
- 前端分析-202307110078
- JPEGsnoop新版本
- SQL是一种用于管理和操作关系数据库的标准语言,包括数据查询、数据插入、数据更新、数据删除、数据库结构创建和修改等功能
- 《路由与交换技术》课程实验报告(实训2)chenli.docx
- 基于Python实现一个庆祝国庆节的小程序
- 一个应用商店的第三方市场源的系统的后台源码,开源了先看后台截图 后台的前端是layui框架,后端是PHP,数据库是MySQL
- PLC AB 1756-L62 与 AB 5069 通过串口通信ACD 项目
- 5G-A(5.5G)新技术交流.pdf
- 前端分析-202307110078
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈