当前位置: 首页 > news >正文

Leetcode 3407. Substring Matching Pattern

  • Leetcode 3407. Substring Matching Pattern
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3407. Substring Matching Pattern

1. 解题思路

这一题是一道leetcode easy的题目,照说应该没啥的,不过实际我做的时候在这里卡了一下,所以还是拿过来稍微记录一下好了。

这道题核心还是字符串的匹配,不过麻烦的点在于*符号可以替换一个或多个字符,然后剩下的部分又会是连续的,因此这里相当于是一个另类的lcs匹配问题。

我最后给的解答还是比较暴力的,就是先按照*将pattern字符串p进行切分,然后顺序考察其中的每一个非空子串是否可以顺序在原始字符串s当中找到。

2. 代码实现

给出python代码实现如下:

class Solution:def hasMatch(self, s: str, p: str) -> bool:p = p.strip("*").split("*")i, n = 0, len(s)for sub in p:if sub == "":continuewhile i < n and not s[i:].startswith(sub):i += 1if i >= n:return Falsei += len(sub)return True

提交代码评测得到:耗时0ms,占用内存17.7MB。

http://www.lryc.cn/news/516802.html

相关文章:

  • 学英语学压测:02jmeter组件-测试计划和线程组ramp-up参数的作用
  • Vue笔记-001-声明式渲染
  • 26考研资料分享 百度网盘
  • .NET 8 + Ocelot + Consul 实现代理网关、服务发现
  • 使用 Nginx 轻松处理跨域请求(CORS)
  • 【LeetCode Hot100 二分查找】搜索插入位置、搜索二维矩阵、搜索旋转排序数组、寻找两个正序数组的中位数
  • 使用MediaPipe Face Mesh 面部动作检测
  • 【Vue】<script setup>和 <script>区别是什么?在使用时的写法区别?
  • 微服务框架,Http异步编程中,如何保证数据的最终一致性
  • vue3-dom-diff算法
  • 年会抽奖Html
  • ubuntu16 重启之后lvm信息丢失故障恢复
  • 【华为OD-E卷 - 热点网站统计 100分(python、java、c++、js、c)】
  • Ubuntu下安装Android Sdk
  • 【JVM】总结篇-类的加载篇之 类的加载器 和ClassLoader分析
  • 怎样修改el-table主题样式
  • MySQL(二)MySQL DDL数据库定义语言
  • Spring Boot 项目启动报 NoClassDefFoundError 异常的原因分析与解决方案 - jackson 版本不一致
  • 原型与原型链
  • 【Linux】信号处理
  • 5个不同类型的mysql数据库安装
  • python学习笔记—12—布尔类型、if语句
  • 分数阶傅里叶变换代码 MATLAB实现
  • 《数据结构》期末考试测试题【中】
  • openwrt 清缓存命令行
  • RP2K:一个面向细粒度图像的大规模零售商品数据集
  • .NET Core FluentAPI
  • 【C++数据结构——查找】顺序查找(头歌实践教学平台习题)【合集】
  • HTTP Scheme 通常指的是在 URL 中用于指定使用 HTTP 协议的方案(scheme)
  • 基于Matlab的变压器仿真模型建模方法(13):单相升压自耦变压器的等效电路和仿真模型