【C++学习篇】滑动窗口--结合例题讲解思路

目录

[1. 例题:最小覆盖子串](#1. 例题:最小覆盖子串)

[1.1 解题思路](#1.1 解题思路)

[2. 方法一代码实现:用kinds来记录t中有效元素的种类,count来记录s中的有效元素种类](#2. 方法一代码实现:用kinds来记录t中有效元素的种类,count来记录s中的有效元素种类)

[3. 方法二:count来记录s中有效元素的个数](#3. 方法二:count来记录s中有效元素的个数)


ok,这是最后一期关于滑动窗口的学习章节了。本期我讲解的例题是-》最小覆盖子串

我个人建议,看不懂解析的可以看看我前面一期关于滑动窗口解析,因为这期的题是在上一期题目加深的一道题,理解上一期,本期题目就不再难了。

1.例题:最小覆盖子串

力扣--最小覆盖子串https://leetcode.cn/problems/minimum-window-substring/submissions/594529034/

这里我有两种方法,但是大体思路一致,唯一区别就在于是判断那一块儿,是记录有效元素的个数呢还是记录有效元素的种类个数。

1.1 解题思路

用两个数组来实现哈希表的功能,hash1来记录s中每个字符的出现次数,hash2来记录t中每个元素出现次数。

2.方法一代码实现:用kinds来记录t中有效元素的种类,count来记录s中的有效元素种类

3. 方法二:count来记录s中有效元素的个数

总体来说,这道题还是很考验技术的,有难度,建议大家结合上期滑动窗口例题来做学习哈,谢谢支持!

相关推荐
白杨尚青1 小时前
C++进阶篇(二):多态——虚函数、重写、虚函数表与三个经典坑(附完整代码仓库)
开发语言·c++·多态·虚函数·重写·动态绑定
syagain_zsx2 小时前
spdlog实战:日志分级、滚动与性能调优
linux·c++·日志库·二次开发日志库
zyl76515 小时前
FlashAttention 详解:从 GPU 硬件、普通 Attention 到分块计算与 Online Softmax
算法
爱读书的小胖19 小时前
LeetCode 122:买卖股票的最佳时机 II(C)解题分析
算法
结局无敌19 小时前
React Native for OpenHarmony 实战:三方库 react-native-modal-dialog 的鸿蒙化适配指南
深度学习·算法·react native·react.js·harmonyos
WJ.Polar19 小时前
Java封装、继承、多态
java·开发语言
摇滚侠19 小时前
Java 中如何表示负数,有符号和无符号的区别,补码的计算规则,char byte short int long 的范围
java·开发语言
OPEN-F20 小时前
ROS2系列教程:上位机建图与导航(原理综合)
算法·机器人
weixin_3077791320 小时前
C++代码实现MATLAB中的fitrtree函数功能
开发语言·c++·算法·matlab
AI wins20 小时前
c++新增頭文件
c++