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

【优选算法系列】【专题二滑动窗口】第四节.30. 串联所有单词的子串和76. 最小覆盖子串

文章目录

  • 前言
  • 一、串联所有单词的子串
  •       1.1 题目描述
  •       1.2 题目解析
  •            1.2.1 算法原理
  •            1.2.2 代码编写
  •            1.2.3 题目总结
  • 二、最小覆盖子串
  •       2.1 题目描述
  •       2.2 题目解析
  •            2.2.1 算法原理
  •            2.2.2 代码编写
  •            2.2.3 题目总结
  • 总结


前言

一、串联所有单词的子串

1.1 题目描述

描述:

给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。

 s 中的 串联子串 是指一个包含  words 中所有字符串以任意顺序排列连接起来的子串。

  • 例如,如果 words = ["ab","cd","ef"], 那么 "abcdef", "abefcd""cdabef", "cdefab""efabcd", 和 "efcdab" 都是串联子串。 "acdbef" 不是串联子串,因为他不是任何 words 排列的连接。

返回所有串联子串在 s 中的开始索引。你可以以 任意顺序 返回答案。


提示:

  • 1 <= s.length <= 10^4
  • 1 <= words.length <= 5000
  • 1 <= words[i].length <= 30
  • words[i] 和 s 由小写英文字母组成

示例1:


示例2:


示例3:


1.2 题目解析

1.2.1 算法原理


1.2.2 代码编写


1.3 题目总结


二、最小覆盖子串

2.1 题目描述

描述:

给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。


注意:

  • 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。
  • 如果 s 中存在这样的子串,我们保证它是唯一的答案。

示例1:


示例2:


示例3:


2.2 题目解析

 2.2.1 算法原理


2.2.2 代码编写


2.2.3 题目总结

总结


http://www.kler.cn/a/163167.html

相关文章:

  • 【韩老师零基础30天学会Java 】07章 面向对象编程(基础)
  • 如何理解DDoS安全防护在企业安全防护中的作用
  • 智能零售柜商品识别
  • Oracle RAC的thread
  • 「QT」几何数据类 之 QLine 整型直线类
  • 学习方法——看差的书籍
  • 详解Keras3.0 Models API: Model class
  • Linux gtest单元测试
  • 基于Java医院挂号管理系统
  • sql2005日志文件过大如何清理
  • C/C++,优化算法——双离子推销员问题(Bitonic Travelling Salesman Problem)的计算方法与源代码
  • 二分查找|前缀和|滑动窗口|2302:统计得分小于 K 的子数组数目
  • linux常用命令-pip命令详解(超详细)
  • 判断css文字发生了截断,增加悬浮提示
  • 一. 初识数据结构和算法
  • StoneDB-8.0-V2.2.0 企业版正式发布!性能优化,稳定性提升,持续公测中!
  • 十七、FreeRTOS之FreeRTOS事件标志组
  • 麒麟系统进入救援模式或者是crtl D界面排查方法
  • Linux下通过find找文件---通过修改时间查找(-mtime)
  • 网络工程师【目录】
  • Python 潮流周刊#29:Rust 会比 Python 慢?!
  • 初识人工智能,一文读懂人工智能概论(1)
  • win10 笔记本卡顿优化
  • 二叉树的遍历之迭代遍历
  • 文献计量学方法与应用、主题确定、检索与数据采集、VOSviewer可视化绘图、Citespace可视化绘图、R语言文献计量学绘图分析
  • Python嗅探和解析网络数据包