📋 刷题导航
按知识点整理已经完成题目、解题思路和代码实现的算法笔记。同一道题可能同时属于多个分类。
数组
- 704. 二分查找 — 二分查找、区间定义
- 27. 移除元素 — 原地修改、快慢指针
- 977. 有序数组的平方 — 有序数组、相向双指针
- 209. 长度最小的子数组 — 滑动窗口、连续子数组
- 59. 螺旋矩阵II — 二维数组、矩阵模拟
- 1. 两数之和 — 数组遍历、补数查找
- 11. 盛最多水的容器 — 相向双指针、短板效应
- 128. 最长连续序列 — 哈希集合、序列起点
- 15. 三数之和 — 排序、去重、双指针
- 349. 两个数组的交集 — 标记数组、结果去重
链表
- 203. 移除链表元素 — 虚拟头节点、节点删除
- 707. 设计链表 — 单链表设计、下标操作
- 160. 相交链表 — 双指针切换链表头
- 19. 删除链表的倒数第 N 个结点 — 快慢指针、虚拟头节点
- 206. 反转链表 — 三指针迭代、递归反转
- 142. 环形链表 II — 快慢指针、环起点推导
哈希表
- 1. 两数之和 — 使用哈希表记录已遍历元素,将查找优化为平均
- 3. 无重复字符的最长子串 — 滑动窗口、字符去重
- 49. 字母异位词分组 — 排序键、哈希分组
- 128. 最长连续序列 — 哈希集合、起点枚举
- 202. 快乐数 — 哈希集合、循环检测
- 242. 有效的字母异位词 — 字符频率计数
- 349. 两个数组的交集 — 标记数组、集合去重
- 454. 四数相加 II — 两数之和频率、补数查找
- 383. 赎金信 — 计数数组、字符频率
字符串
- 58. 最后一个单词的长度 — 反向遍历、跳过末尾空格
- 3. 无重复字符的最长子串 — 滑动窗口、字符最近位置
- 49. 字母异位词分组 — 规范键、字符串排序
- 242. 有效的字母异位词 — 计数数组、频率抵消
- 344. 反转字符串 — 相向双指针、原地反转
- 541. 反转字符串 II — 分段反转、双指针
双指针法
- 27. 移除元素 — 快慢指针、首尾指针
- 977. 有序数组的平方 — 相向双指针、逆序填充结果
- 209. 长度最小的子数组 — 滑动窗口、左右边界动态收缩
- 3. 无重复字符的最长子串 — 滑动窗口、左右边界
- 11. 盛最多水的容器 — 相向双指针、移动短边
- 15. 三数之和 — 固定一个数、相向双指针
栈与队列
☑️ 待补充已实现题目
二叉树
☑️ 待补充已实现题目
回溯算法
☑️ 待补充已实现题目
贪心算法
☑️ 待补充已实现题目
动态规划
☑️ 待补充已实现题目
单调栈
☑️ 待补充已实现题目
图论
☑️ 待补充已实现题目
未完成(已移回 Inbox)
以下题目只有题目模板、无解题思路与代码,已移回 00-Inbox 待整理;完成后迁回本目录并归入上方对应分类:
-
- 接雨水 — 单调栈/双指针
-
- 最小覆盖子串 — 滑动窗口
-
- 移动零 — 双指针
-
- 找到字符串中所有字母异位词 — 滑动窗口