滑动窗口
滑动窗口
全部标签
数据结构
数组
矩阵
链表
双向链表
栈
单调栈
队列
单调队列
堆(优先队列)
哈希表
字符串
字符串匹配
树
二叉树
二叉搜索树
最小生成树
图
有序集合
拓扑排序
最短路
强连通分量
欧拉回路
双连通分量
并查集
字典树
线段树
树状数组
后缀数组
算法
枚举
递归
分治
回溯
贪心
动态规划
排序
桶排序
计数排序
基数排序
归并排序
快速选择
二分查找
记忆化搜索
深度优先搜索
广度优先搜索
双指针
位运算
前缀和
计数
滑动窗口 状态压缩
哈希函数
滚动哈希
扫描线
其他
数学
数论
几何
博弈
模拟
组合数学
随机化
概率与统计
水塘抽样
拒绝采样
数据库
设计
数据流
脑筋急转弯
交互
迭代器
多线程
题号 | 标题 | 题解 | 标签 | 难度 | 力扣 |
---|---|---|---|---|---|
3 | 无重复字符的最长子串 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 |
30 | 串联所有单词的子串 | [✓] | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ 🔗 |
76 | 最小覆盖子串 | [✓] | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ 🔗 |
159 | 至多包含两个不同字符的最长子串 🔒 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
187 | 重复的DNA序列 | 位运算 哈希表 字符串 3+ | 🟠 | 🀄️ 🔗 | |
209 | 长度最小的子数组 | [✓] | 数组 二分查找 前缀和 1+ | 🟠 | 🀄️ 🔗 |
219 | 存在重复元素 II | [✓] | 数组 哈希表 滑动窗口 | 🟢 | 🀄️ 🔗 |
220 | 存在重复元素 III | 数组 桶排序 有序集合 2+ | 🔴 | 🀄️ 🔗 | |
239 | 滑动窗口最大值 | [✓] | 队列 数组 滑动窗口 2+ | 🔴 | 🀄️ 🔗 |
340 | 至多包含 K 个不同字符的最长子串 🔒 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
395 | 至少有 K 个重复字符的最长子串 | 哈希表 字符串 分治 1+ | 🟠 | 🀄️ 🔗 | |
413 | 等差数列划分 | 数组 动态规划 滑动窗口 | 🟠 | 🀄️ 🔗 | |
424 | 替换后的最长重复字符 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
438 | 找到字符串中所有字母异位词 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 |
480 | 滑动窗口中位数 | 数组 哈希表 滑动窗口 1+ | 🔴 | 🀄️ 🔗 | |
487 | 最大连续1的个数 II 🔒 | 数组 动态规划 滑动窗口 | 🟠 | 🀄️ 🔗 | |
567 | 字符串的排列 | [✓] | 哈希表 双指针 字符串 1+ | 🟠 | 🀄️ 🔗 |
594 | 最长和谐子序列 | [✓] | 数组 哈希表 计数 2+ | 🟢 | 🀄️ 🔗 |
632 | 最小区间 | [✓] | 贪心 数组 哈希表 3+ | 🔴 | 🀄️ 🔗 |
643 | 子数组最大平均数 I | [✓] | 数组 滑动窗口 | 🟢 | 🀄️ 🔗 |
658 | 找到 K 个最接近的元素 | [✓] | 数组 双指针 二分查找 3+ | 🟠 | 🀄️ 🔗 |
683 | K 个关闭的灯泡 🔒 | 树状数组 线段树 队列 5+ | 🔴 | 🀄️ 🔗 | |
713 | 乘积小于 K 的子数组 | 数组 二分查找 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
718 | 最长重复子数组 | 数组 二分查找 动态规划 3+ | 🟠 | 🀄️ 🔗 | |
727 | 最小窗口子序列 🔒 | 字符串 动态规划 滑动窗口 | 🔴 | 🀄️ 🔗 | |
837 | 新 21 点 | 数学 动态规划 滑动窗口 1+ | 🟠 | 🀄️ 🔗 | |
862 | 和至少为 K 的最短子数组 | [✓] | 队列 数组 二分查找 4+ | 🔴 | 🀄️ 🔗 |
904 | 水果成篮 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
930 | 和相同的二元子数组 | 数组 哈希表 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
978 | 最长湍流子数组 | 数组 动态规划 滑动窗口 | 🟠 | 🀄️ 🔗 | |
992 | K 个不同整数的子数组 | 数组 哈希表 计数 1+ | 🔴 | 🀄️ 🔗 | |
995 | K 连续位的最小翻转次数 | 位运算 队列 数组 2+ | 🔴 | 🀄️ 🔗 | |
1004 | 最大连续1的个数 III | [✓] | 数组 二分查找 前缀和 1+ | 🟠 | 🀄️ 🔗 |
1031 | 两个非重叠子数组的最大和 | 数组 动态规划 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1044 | 最长重复子串 | 字符串 二分查找 后缀数组 3+ | 🔴 | 🀄️ 🔗 | |
1052 | 爱生气的书店老板 | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1100 | 长度为 K 的无重复字符子串 🔒 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1151 | 最少交换次数来组合所有的 1 🔒 | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1156 | 单字符重复子串的最大长度 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1176 | 健身计划评估 🔒 | 数组 滑动窗口 | 🟢 | 🀄️ 🔗 | |
1208 | 尽可能使字符串相等 | 字符串 二分查找 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
1234 | 替换子串得到平衡字符串 | 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1248 | 统计「优美子数组」 | 数组 哈希表 数学 2+ | 🟠 | 🀄️ 🔗 | |
1297 | 子串的最大出现次数 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1343 | 大小为 K 且平均值大于等于阈值的子数组数目 | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1358 | 包含所有三种字符的子字符串数目 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1423 | 可获得的最大点数 | 数组 前缀和 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1425 | 带限制的子序列和 | 队列 数组 动态规划 3+ | 🔴 | 🀄️ 🔗 | |
1438 | 绝对差不超过限制的最长连续子数组 | 队列 数组 有序集合 3+ | 🟠 | 🀄️ 🔗 | |
1456 | 定长子串中元音的最大数目 | [✓] | 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 |
1477 | 找两个和为目标值且不重叠的子数组 | 数组 哈希表 二分查找 2+ | 🟠 | 🀄️ 🔗 | |
1493 | 删掉一个元素以后全为 1 的最长子数组 | [✓] | 数组 动态规划 滑动窗口 | 🟠 | 🀄️ 🔗 |
1499 | 满足不等式的最大值 | 队列 数组 滑动窗口 2+ | 🔴 | 🀄️ 🔗 | |
1610 | 可见点的最大数目 | 几何 数组 数学 2+ | 🔴 | 🀄️ 🔗 | |
1652 | 拆炸弹 | [✓] | 数组 滑动窗口 | 🟢 | 🀄️ 🔗 |
1658 | 将 x 减到 0 的最小操作数 | 数组 哈希表 二分查找 2+ | 🟠 | 🀄️ 🔗 | |
1695 | 删除子数组的最大得分 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1703 | 得到连续 K 个 1 的最少相邻交换次数 | 贪心 数组 前缀和 1+ | 🔴 | 🀄️ 🔗 | |
1763 | 最长的美好子字符串 | [✓] | 位运算 哈希表 字符串 2+ | 🟢 | 🀄️ 🔗 |
1838 | 最高频元素的频数 | 贪心 数组 二分查找 3+ | 🟠 | 🀄️ 🔗 | |
1839 | 所有元音按顺序排布的最长子字符串 | 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1852 | 每个子数组的数字种类数 🔒 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1871 | 跳跃游戏 VII | 字符串 动态规划 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
1876 | 长度为三且各字符不同的子字符串 | [✓] | 哈希表 字符串 计数 1+ | 🟢 | 🀄️ 🔗 |
1888 | 使二进制字符串字符交替的最少反转次数 | 贪心 字符串 动态规划 1+ | 🟠 | 🀄️ 🔗 | |
1918 | 第 K 小的子数组和 🔒 | 数组 二分查找 滑动窗口 | 🟠 | 🀄️ 🔗 | |
1984 | 学生分数的最小差值 | [✓] | 数组 排序 滑动窗口 | 🟢 | 🀄️ 🔗 |
2009 | 使数组连续的最少操作数 | 数组 哈希表 二分查找 1+ | 🔴 | 🀄️ 🔗 | |
2024 | 考试的最大困扰度 | 字符串 二分查找 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
2090 | 半径为 k 的子数组平均值 | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2106 | 摘水果 | 数组 二分查找 前缀和 1+ | 🔴 | 🀄️ 🔗 | |
2107 | 分享 K 个糖果后独特口味的数量 🔒 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2134 | 最少交换次数来组合所有的 1 II | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2156 | 查找给定哈希值的子串 | 字符串 滑动窗口 哈希函数 1+ | 🔴 | 🀄️ 🔗 | |
2260 | 必须拿起的最小连续卡牌数 | [✓] | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 |
2269 | 找到一个数字的 K 美丽值 | 数学 字符串 滑动窗口 | 🟢 | 🀄️ 🔗 | |
2302 | 统计得分小于 K 的子数组数目 | 数组 二分查找 前缀和 1+ | 🔴 | 🀄️ 🔗 | |
2379 | 得到 K 个黑块的最少涂色次数 | 字符串 滑动窗口 | 🟢 | 🀄️ 🔗 | |
2398 | 预算内的最多机器人数目 | 队列 数组 二分查找 4+ | 🔴 | 🀄️ 🔗 | |
2401 | 最长优雅子数组 | 位运算 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2411 | 按位或最大的最小子数组长度 | 位运算 数组 二分查找 1+ | 🟠 | 🀄️ 🔗 | |
2444 | 统计定界子数组的数目 | 队列 数组 滑动窗口 1+ | 🔴 | 🀄️ 🔗 | |
2461 | 长度为 K 子数组中的最大和 | [✓] | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 |
2516 | 每种字符至少取 K 个 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 |
2524 | 子数组的最大频率分数 🔒 | 数组 哈希表 数学 1+ | 🔴 | 🀄️ 🔗 | |
2528 | 最大化城市的最小电量 | 贪心 队列 数组 3+ | 🔴 | 🀄️ 🔗 | |
2537 | 统计好子数组的数目 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2555 | 两个线段获得的最多奖品 | 数组 二分查找 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2653 | 滑动子数组的美丽值 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2730 | 找到最长的半重复子字符串 | 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2743 | 计算没有重复字符的子字符串数量 🔒 | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2747 | 统计没有收到请求的服务器数目 | 数组 哈希表 排序 1+ | 🟠 | 🀄️ 🔗 | |
2760 | 最长奇偶子数组 | 数组 滑动窗口 | 🟢 | 🀄️ 🔗 | |
2762 | 不间断子数组 | [✓] | 队列 数组 有序集合 3+ | 🟠 | 🀄️ 🔗 |
2779 | 数组的最大美丽值 | [✓] | 数组 二分查找 排序 1+ | 🟠 | 🀄️ 🔗 |
2781 | 最长合法子字符串的长度 | 数组 哈希表 字符串 1+ | 🔴 | 🀄️ 🔗 | |
2799 | 统计完全子数组的数目 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2831 | 找出最长等值子数组 | 数组 哈希表 二分查找 1+ | 🟠 | 🀄️ 🔗 | |
2841 | 几乎唯一子数组的最大和 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2875 | 无限数组的最短子数组 | 数组 哈希表 前缀和 1+ | 🟠 | 🀄️ 🔗 | |
2902 | 和带限制的子多重集合的数目 | 数组 哈希表 动态规划 1+ | 🔴 | 🀄️ 🔗 | |
2904 | 最短且字典序最小的美丽子字符串 | 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2932 | 找出强数对的最大异或值 I | 位运算 字典树 数组 2+ | 🟢 | 🀄️ 🔗 | |
2935 | 找出强数对的最大异或值 II | 位运算 字典树 数组 2+ | 🔴 | 🀄️ 🔗 | |
2953 | 统计完全子字符串 | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ 🔗 | |
2958 | 最多 K 个重复元素的最长子数组 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2962 | 统计最大元素出现至少 K 次的子数组 | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
2968 | 执行操作使频率分数最大 | 数组 二分查找 前缀和 2+ | 🔴 | 🀄️ 🔗 | |
2981 | 找出出现至少三次的最长特殊子字符串 I | 哈希表 字符串 二分查找 2+ | 🟠 | 🀄️ 🔗 | |
2982 | 找出出现至少三次的最长特殊子字符串 II | 哈希表 字符串 二分查找 2+ | 🟠 | 🀄️ 🔗 | |
3013 | 将数组分成最小总代价的子数组 II | 数组 哈希表 滑动窗口 1+ | 🔴 | 🀄️ 🔗 | |
3023 | 在无限流中寻找模式 I 🔒 | 数组 字符串匹配 滑动窗口 2+ | 🟠 | 🀄️ 🔗 | |
3037 | 在无限流中寻找模式 II 🔒 | 数组 字符串匹配 滑动窗口 2+ | 🔴 | 🀄️ 🔗 | |
3086 | 拾起 K 个 1 需要的最少行动次数 | 贪心 数组 前缀和 1+ | 🔴 | 🀄️ 🔗 | |
3090 | 每个字符最多出现两次的最长子字符串 | 哈希表 字符串 滑动窗口 | 🟢 | 🀄️ 🔗 | |
3095 | 或值至少 K 的最短子数组 I | 位运算 数组 滑动窗口 | 🟢 | 🀄️ 🔗 | |
3097 | 或值至少为 K 的最短子数组 II | [✓] | 位运算 数组 滑动窗口 | 🟠 | 🀄️ 🔗 |
3134 | 找出唯一性数组的中位数 | 数组 哈希表 二分查找 1+ | 🔴 | 🀄️ 🔗 | |
3135 | 通过添加或删除结尾字符来同化字符串 🔒 | 字符串 二分查找 动态规划 2+ | 🟠 | 🀄️ 🔗 | |
3191 | 使二进制数组全部等于 1 的最少操作次数 I | 位运算 队列 数组 2+ | 🟠 | 🀄️ 🔗 | |
3206 | 交替组 I | 数组 滑动窗口 | 🟢 | 🀄️ 🔗 | |
3208 | 交替组 II | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3234 | 统计 1 显著的字符串的数量 | 字符串 枚举 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3254 | 长度为 K 的子数组的能量值 I | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3255 | 长度为 K 的子数组的能量值 II | 数组 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3258 | 统计满足 K 约束的子字符串数量 I | 字符串 滑动窗口 | 🟢 | 🀄️ 🔗 | |
3261 | 统计满足 K 约束的子字符串数量 II | 数组 字符串 二分查找 2+ | 🔴 | 🀄️ 🔗 | |
3297 | 统计重新排列后包含另一个字符串的子字符串数目 I | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3298 | 统计重新排列后包含另一个字符串的子字符串数目 II | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ 🔗 | |
3305 | 元音辅音字符串计数 I | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3306 | 元音辅音字符串计数 II | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3318 | 计算子数组的 x-sum I | [✓] | 数组 哈希表 滑动窗口 1+ | 🟢 | 🀄️ 🔗 |
3321 | 计算子数组的 x-sum II | [✓] | 数组 哈希表 滑动窗口 1+ | 🔴 | 🀄️ 🔗 |
3323 | 通过插入区间最小化连通组 🔒 | 数组 二分查找 排序 1+ | 🟠 | 🀄️ 🔗 | |
3325 | 字符至少出现 K 次的子字符串 I | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ 🔗 | |
3329 | 字符至少出现 K 次的子字符串 II 🔒 | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ 🔗 | |
LCP 68 | 美观的花束 | 数组 滑动窗口 | 🟠 | 🀄️ | |
剑指 Offer 48 | 最长不含重复字符的子字符串 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ |
剑指 Offer 59 | 滑动窗口的最大值 | [✓] | 队列 数组 滑动窗口 2+ | 🔴 | 🀄️ |
剑指 Offer II 14 | 字符串中的变位词 | [✓] | 哈希表 双指针 字符串 1+ | 🟠 | 🀄️ |
剑指 Offer II 15 | 字符串中的所有变位词 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ |
剑指 Offer II 16 | 不含重复字符的最长子字符串 | [✓] | 哈希表 字符串 滑动窗口 | 🟠 | 🀄️ |
剑指 Offer II 17 | 含有所有字符的最短字符串 | 哈希表 字符串 滑动窗口 | 🔴 | 🀄️ | |
剑指 Offer II 56 | 二叉搜索树中两个节点之和 | 数组 滑动窗口 | 🟢 | 🀄️ | |
剑指 Offer II 57 | 值和下标之差都在给定的范围内 | 数组 桶排序 有序集合 2+ | 🟠 | 🀄️ | |
剑指 Offer II 8 | 和大于等于 target 的最短子数组 | [✓] | 数组 二分查找 前缀和 1+ | 🟠 | 🀄️ |
剑指 Offer II 9 | 乘积小于 K 的子数组 | 数组 滑动窗口 | 🟠 | 🀄️ | |
面试题 17.17 | 多次搜索 | 字典树 数组 哈希表 3+ | 🟠 | 🀄️ | |
面试题 17.18 | 最短超串 | 数组 哈希表 滑动窗口 | 🟠 | 🀄️ |