相似题目汇总
📅 发表于 2026/05/19
🔄 更新于 2026/08/05
👁️ — 次访问
📝 4570 字
⏳ 13 分钟
Hash
暴力法:依次遍历,补数Hash查找法双指针
排序遍历 使用左右指针找两数求和滑动窗口
前缀和加补数求数量数组
前缀和求最大子数组和,求最值,贪心累加求和法,DP求最大子数组和链表
遍历2链表 保留进位依次相加二叉树
DFS后序遍历查找节点 求次数DFS后序最大node单线收益和Ʌ型收益 求最值二维DP
二维DP最小路径和Hash
字符串生成key做分组滑动窗口
counter异位词相等 + 滑动窗口右扩展 判断counter相等滑动窗口右扩展左收缩 判断counter小于等于Hash
先排序 再遍历判断数字连续,数组去重起点判断 往后找法滑动窗口
暴力遍历各字符作为起始的最长子串长度,记录ch位置+左右指针滑动窗口 计算长度法数组
前缀和求最大子数组和,贪心去负累加求和,DP求最大子数组和双指针
面积公式 + 左右指针往中间靠+ 谁低谁靠每根数字接水量公式,暴力法每根柱子接水量求和,左右指针依次求解每根柱子接水量,DP计算最大值 再依次求解每根柱子接水量栈
链表
双指针同速遍历自己和对方法快慢指针相遇判断有环快慢指针2次相遇判断有环找入环首节点快慢指针找中间+后半链表翻转+首尾遍历判断法数组
python直接切片法、整体翻转再左右各翻转矩阵
首行首列记录法复制赋值法,先矩阵转置 再行翻转链表
迭代循环翻转链表遍历成对交换法k个一组分别翻转二叉树
DFS 翻转、BFS 翻转DFS 判断对称、BFS 判断对称双指针
快慢指针找非0 交换到前面,前面先存非0 后面再统一补0数组
原地交换Hash位置判断法、按位置放置新数组方法(不做原地交换)矩阵
右下左上四点圈层遍历法链表
快慢指针走n+1步 找到目标节点Hash建立新旧节点索引 复制链表法、原地修改法:依次插入新节点Hash
补数Hash查找法双指针
排序遍历+左右指针找2数和滑动窗口
前缀和加补数求数量,求次数数组
前缀和求最大子数组和,求最值,贪心累加求和法,DP求最大子数组和左右侧乘积前缀法链表
遍历2链表 保留进位依次相加二叉树
DFS后序遍历查找节点 求次数DFS后序最大node单线收益和Ʌ型收益 求最值回溯
回溯左右括号合法性选择栈
栈先进后出判断括号有效DP
DP 最长有效括号(递推条件判断),栈最长有效括号(迭代更新最大长度)双指针
快慢指针交换堆
快速选择第k大值,small equal big 三部分。技巧
LowMidHigh三指针分块 Mid交换法Hash
暴力法:依次遍历,补数Hash查找法字符串生成key做分组排序遍历判断数字连续法、数组去重起点判断往后找法双指针
快慢指针找非0交换到前面,前面先存非0后面再统一补0左右指针往中间靠排序遍历使用左右指针找两数求和暴力法:每根柱子接水量求和,左右指针法:依次求解每根柱子接水量,DP计算最大值:再依次求解每根柱子接水量滑动窗口
暴力遍历各字符作为起始的最长子串长度,左右指针滑动窗口计算长度法暴力穷举判断异位词,滑动窗口左右指针统计次数法前缀和加补数求数量双端单调队列窗口队首最值法滑动窗口右扩展左收缩数组
前缀和求最大子数组和,求最值,贪心累加求和法,DP求最大子数组和排序再合并区间方法python直接切片法、整体翻转再左右各翻转左右侧乘积前缀法原地交换Hash位置判断法、按位置放置新数组方法(不做原地交换)链表
双指针同速遍历自己和对方法快慢指针相遇判断有环快慢指针2次相遇判断有环找入环首节点快慢指针找中间+后半链表翻转+首尾遍历判断法二叉树
栈中序遍历、DFS中序遍历栈前序遍历栈后序遍历BFS 层次遍历层次遍历 输出每层最后元素栈先序遍历 再链接链表、Morris左右节点原地移植算法DFS后序遍历 查找最近公共祖先二叉树
DFS计算深度、BFS计算深度DFS 计算直径、节点之间边的数量DFS后序遍历查找节点 求次数DFS后序最大node单线收益和Ʌ型收益 求最值二叉树
中间元素作根节点 递归建树build(left, right), build(0, len(nums) - 1)DFS validate 验证二叉搜索树、DFS中序遍历判断二叉搜索、栈中序遍历判断二叉搜索栈中序遍历找第k小方法回溯
回溯全排列,重复数组全排列每步选择不同集合全排列回溯左右括号合法性判断选择回溯搜索
Path回溯搜索(复杂版写法),首字符相同搜索匹配单词(终止条件)回文串切割位置搜索回溯主对角线判断方法,回溯双层循环判断方法栈
栈先进后出判断括号有效数据栈和最小栈出栈字符4种可能性累加解码字符串DP
DP 最长有效括号(递推条件判断),栈最长有效括号(迭代更新最大长度)二分搜索
二分淘汰寻找第k小的数,双指针合并数组找中位数堆
快速选择第k大值、最小堆获取第k大值、桶排序获得第k大值Hash计数+堆排序获取前k个高频元素、Hash计数+桶排序获取前k个高频元素贪心
最低价格最高利润贪心法贪心股票所有微小涨幅之和贪心到达最远位置贪心到达最大位置记录步数贪心子串右边界位置分割DP
偷房间钱最高金额完全平方数求和最少数量子串组成字符串可能性硬币求和最少硬币数量最长递增子序列长度、分堆贪心二分结尾数字最小值二维DP
DP网格上左不同路径数量DP起始路径有障碍物二维DP最小路径和二维DP最长公共子序列、一维DP最长公共子序列二维DP编辑距离、一维DP编辑距离回文串中心奇偶检测扩展法、DP 最长回文子串、Manacher回文串算法