本仓库是一个精选的算法题合集,专注于大厂面试、校招笔试和LeetCode的经典题目。✨
English README
- 本README题目均使用 LeetCode原题名称+链接,便于直接刷题;链接中标注「剑指Offer」的题目,对应 LeetCode LCR 变体题。
- 刷题建议:优先刷LeetCode hot100、剑指offer、本README中频率为高的题目,覆盖80%大厂考点。
- 刷剑指Offer原题:详见下方「剑指Offer刷题指南」。
- 了解大厂出题偏好和改编题:可访问variants文件夹。
- 自行刷题:参考下方刷题平台。
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 有效的字母异位词 | 哈希表, 字符串 | 简单 | 中 | LeetCode 242 |
| Fizz Buzz | 数学, 字符串 | 简单 | 低 | LeetCode 412 |
| 反转字符串 | 数组, 双指针 | 简单 | 低 | LeetCode 344 |
| 有效的括号 | 栈, 字符串 | 简单 | 高 | LeetCode 20 |
| 反转链表 | 链表, 递归 | 简单 | 高 | LeetCode 206 |
| 合并两个有序链表 | 链表, 递归 | 简单 | 中 | LeetCode 21 |
| 移除元素 | 数组, 双指针 | 简单 | 中 | LeetCode 27 |
| 整数反转 | 数学 | 简单 | 中 | LeetCode 7 |
| 回文数 | 数学 | 简单 | 中 | LeetCode 9 |
| 罗马数字转整数 | 哈希表, 字符串 | 简单 | 低 | LeetCode 13 |
| 存在重复元素 | 数组, 哈希表 | 简单 | 高 | LeetCode 217 |
| 寻找出现超过一半的数字 | 数组, 分治 | 简单 | 高 | LeetCode 169 |
| 环形链表 | 链表, 双指针 | 简单 | 中 | LeetCode 141 |
| 爬楼梯 | 动态规划 | 简单 | 高 | LeetCode 70 |
| 删除排序链表中的重复元素 | 链表 | 简单 | 低 | LeetCode 83 |
| 买卖股票的最佳时机 | 数组, 动态规划 | 中等 | 高 | LeetCode 121 |
| 搜索二维矩阵 | 数组, 二分查找 | 中等 | 中 | LeetCode 74 |
| 链表上的数字相加 | 链表, 数学 | 中等 | 高 | LeetCode 2 |
| 无重复字符的最长子串 | 哈希表, 字符串, 滑动窗口 | 中等 | 高 | LeetCode 3 |
| 岛屿数量 | 深度优先搜索, 广度优先搜索, 并查集 | 中等 | 高 | LeetCode 200 |
| 最大子数组和 | 数组, 分治, 动态规划 | 中等 | 高 | LeetCode 53 |
| 不同路径 | 动态规划 | 中等 | 中 | LeetCode 62 |
| 生成括号 | 回溯 | 中等 | 高 | LeetCode 22 |
| 删除链表的倒数第n个节点 | 链表, 双指针 | 中等 | 高 | LeetCode 19 |
| 电话号码的字母组合 | 回溯, 字符串 | 中等 | 中 | LeetCode 17 |
| 3Sum | 数组, 双指针 | 中等 | 高 | LeetCode 15 |
| 全排列 | 回溯 | 中等 | 高 | LeetCode 46 |
| 组合总和 | 回溯 | 中等 | 高 | LeetCode 39 |
| 字母异位词分组 | 数组, 哈希表, 字符串 | 中等 | 中 | LeetCode 49 |
| 合并区间 | 数组, 排序 | 中等 | 高 | LeetCode 56 |
| 子集 | 位运算, 回溯 | 中等 | 中 | LeetCode 78 |
| 单词搜索 | 数组, 回溯, 矩阵 | 中等 | 低 | LeetCode 79 |
| 验证二叉搜索树 | 树, 深度优先搜索 | 中等 | 中 | LeetCode 98 |
| 根据前序和中序遍历构造二叉树 | 树, 数组, 哈希表, 分治 | 中等 | 中 | LeetCode 105 |
| 最长连续序列 | 并查集, 数组, 哈希表 | 中等 | 高 | LeetCode 128 |
| 单词拆分 | 动态规划, 记忆化搜索 | 中等 | 中 | LeetCode 139 |
| 复原IP地址 | 字符串, 回溯 | 中等 | 中 | LeetCode 93 |
| LRU缓存机制 | 哈希表, 双向链表, 设计 | 中等 | 高 | LeetCode 146 |
| 有效的数独 | 数组, 哈希表, 回溯, 矩阵 | 中等 | 低 | LeetCode 36 |
| 两数之和 II - 输入有序数组 | 数组, 双指针 | 中等 | 中 | LeetCode 167 |
| 字符串转换整数 (atoi) | 字符串 | 中等 | 低 | LeetCode 8 |
| 盛最多水的容器 | 数组, 双指针 | 中等 | 高 | LeetCode 11 |
| 长度最小的子数组 | 数组, 前缀和, 双指针 | 中等 | 中 | LeetCode 209 |
| 下一个排列 | 数组 | 中等 | 中 | LeetCode 31 |
| 螺旋矩阵 | 数组, 矩阵 | 中等 | 低 | LeetCode 54 |
| 搜索旋转排序数组 | 数组, 二分查找 | 中等 | 高 | LeetCode 33 |
| 最小路径和 | 数组, 动态规划, 矩阵 | 中等 | 中 | LeetCode 64 |
| 冗余连接 | 深度优先搜索, 广度优先搜索, 并查集, 图 | 中等 | 低 | LeetCode 684 |
| 数组中的最长山脉 | 数组 | 中等 | 低 | LeetCode 845 |
| 统计一个数组中好对子的数目 | 哈希表, 字符串, 计数 | 中等 | 低 | LeetCode 1815 |
| 和为 K 的子数组 | 数组, 哈希表, 前缀和 | 中等 | 高 | LeetCode 560 |
| 最长回文子串 | 字符串, 动态规划 | 中等 | 高 | LeetCode 5 |
| 二叉树层序遍历 | 树, 广度优先搜索, 二叉树 | 中等 | 中 | LeetCode 102 |
| 课程表 | 深度优先搜索, 广度优先搜索, 图, 拓扑排序 | 中等 | 中 | LeetCode 207 |
| 数组中的第K个最大元素 | 数组, 堆, 分治 | 中等 | 高 | LeetCode 215 |
| 除自身以外数组的乘积 | 数组, 前缀和 | 中等 | 高 | LeetCode 238 |
| 最长递增子序列 | 数组, 动态规划, 二分查找 | 中等 | 高 | LeetCode 300 |
| 分割等和子集 | 动态规划, 背包问题 | 中等 | 中 | LeetCode 416 |
| 编辑距离 | 动态规划 | 中等 | 中 | LeetCode 72 |
| 滑动窗口最大值 | 队列, 滑动窗口, 堆 | 困难 | 高 | LeetCode 239 |
| 按公因数计算最大组件大小 | 并查集, 数组, 哈希表, 数学 | 困难 | 低 | LeetCode 952 |
| 最大人工岛 | 深度优先搜索, 广度优先搜索, 矩阵 | 困难 | 低 | LeetCode 827 |
| 两个排序数组的中位数 | 数组, 二分查找, 分治 | 困难 | 高 | LeetCode 4 |
| 合并k个升序链表 | 链表, 分治, 堆, 优先队列 | 困难 | 高 | LeetCode 23 |
| 分割数组的最大值 | 数组, 二分查找, 动态规划 | 困难 | 中 | LeetCode 410 |
| K个一组翻转链表 | 链表, 递归 | 困难 | 高 | LeetCode 25 |
| 盈利计划 | 动态规划 | 困难 | 中 | LeetCode 879 |
| 规划兼职工作 | 数组, 二分查找, 动态规划, 排序 | 困难 | 中 | LeetCode 1235 |
| 接雨水 | 栈, 数组, 双指针, 动态规划, 单调栈 | 困难 | 高 | LeetCode 42 |
| 最小覆盖子串 | 哈希表, 字符串, 滑动窗口 | 困难 | 高 | LeetCode 76 |
| 柱状图中最大的矩形 | 数组, 栈, 单调栈 | 困难 | 高 | LeetCode 84 |
| 二叉树中的最大路径和 | 树, 深度优先搜索, 动态规划, 二叉树 | 困难 | 高 | LeetCode 124 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 数组、哈希表 | 简单 | 高 | LeetCode 1 |
| 有效的括号 | 栈、字符串 | 简单 | 中 | LeetCode 20 |
| 反转链表 | 链表、递归 | 简单 | 高 | LeetCode 206 |
| 爬楼梯 | 动态规划、记忆化搜索 | 简单 | 中 | LeetCode 70 |
| 买卖股票的最佳时机 | 数组、动态规划 | 简单 | 高 | LeetCode 121 |
| 最大子数组和 | 数组、贪心 | 简单 | 高 | LeetCode 53 |
| 将有序数组转换为二叉搜索树 | 树、深度优先搜索 | 简单 | 中 | LeetCode 108 |
| 二叉树的最小深度 | 树、深度优先搜索 | 简单 | 低 | LeetCode 111 |
| 翻转二叉树 | 树、深度优先搜索 | 简单 | 高 | LeetCode 226 |
| 二叉树的路径总和 | 树、深度优先搜索 | 简单 | 中 | LeetCode 112 |
| 实现 strStr() | 字符串、滑动窗口 | 简单 | 低 | LeetCode 28 |
| 搜索插入位置 | 数组、二分查找 | 简单 | 中 | LeetCode 35 |
| 二叉树的最大深度 | 树、深度优先搜索 | 简单 | 中 | LeetCode 104 |
| 第 k 个缺失的正整数 | 数组、数学 | 简单 | 低 | LeetCode 1539 |
| 寻找比目标字母大的最小字母 | 数组、二分查找 | 简单 | 低 | LeetCode 744 |
| 无重复字符的最长子串 | 字符串、双指针 | 中等 | 高 | LeetCode 3 |
| 岛屿数量 | 深度优先搜索、广度优先搜索 | 中等 | 中 | LeetCode 200 |
| 课程表 | 深度优先搜索、广度优先搜索 | 中等 | 中 | LeetCode 207 |
| 零钱兑换 | 动态规划 | 中等 | 高 | LeetCode 322 |
| 字符串解码 | 栈、递归 | 中等 | 中 | LeetCode 394 |
| 字符串相加 | 字符串、数学 | 中等 | 低 | LeetCode 415 |
| 找到字符串中所有字母异位词 | 哈希表、滑动窗口 | 中等 | 中 | LeetCode 438 |
| 二叉树的直径 | 树、深度优先搜索 | 中等 | 中 | LeetCode 543 |
| 每日温度 | 栈、单调栈 | 中等 | 中 | LeetCode 739 |
| 划分字母区间 | 贪心、双指针 | 中等 | 低 | LeetCode 763 |
| 最接近原点的 K 个点 | 排序、堆 | 中等 | 低 | LeetCode 973 |
| 合并 K 个升序链表 | 链表、分治 | 中等 | 中 | LeetCode 23 |
| 最长有效括号 | 栈、动态规划 | 中等 | 中 | LeetCode 32 |
| 跳跃游戏 | 贪心 | 中等 | 中 | LeetCode 55 |
| 不同路径 | 动态规划 | 中等 | 中 | LeetCode 62 |
| 课程表 II | 深度优先搜索、广度优先搜索 | 中等 | 中 | LeetCode 210 |
| 二叉树的最近公共祖先 | 树、深度优先搜索 | 中等 | 高 | LeetCode 236 |
| 自定义排序字符串 | 字符串、贪心 | 中等 | 低 | LeetCode 791 |
| 三数之和 | 数组、双指针 | 中等 | 高 | LeetCode 15 |
| 寻找重复的子树 | 树、哈希表 | 中等 | 低 | LeetCode 652 |
| 验证二叉搜索树 | 树、深度优先搜索 | 中等 | 高 | LeetCode 98 |
| 从前序与中序遍历序列构造二叉树 | 树、数组 | 中等 | 中 | LeetCode 105 |
| 从中序与后序遍历序列构造二叉树 | 树、数组 | 中等 | 中 | LeetCode 106 |
| 二叉搜索树中的第K小元素 | 树、深度优先搜索 | 中等 | 中 | LeetCode 230 |
| 路径总和 II | 树、深度优先搜索 | 中等 | 中 | LeetCode 113 |
| 二叉树的右视图 | 树、深度优先搜索 | 中等 | 中 | LeetCode 199 |
| 分割等和子集 | DP、子集和 | 中等 | 高 | LeetCode 416 |
| 我能赢吗 | DP、状态压缩 | 中等 | 低 | LeetCode 464 |
| 环形子数组最大和 | 概率、DP | 中等 | 低 | LeetCode 918 |
| 石子游戏 II | 游戏论、贪心、数组 | 中等 | 低 | LeetCode 1140 |
| 计数质数 | 模拟、素数筛 | 中等 | 中 | LeetCode 204 |
| 打家劫舍 III | DP、树状结构 | 中等 | 低 | LeetCode 337 |
| 二叉搜索树到更大和树 | 树、深度优先搜索 | 中等 | 低 | LeetCode 538 |
| 克隆图 | 深度优先搜索、广度优先搜索 | 中等 | 中 | LeetCode 133 |
| 太平洋大西洋水流问题 | 深度优先搜索 | 中等 | 低 | LeetCode 417 |
| LRU 缓存机制 | 设计、哈希表 | 中等 | 高 | LeetCode 146 |
| 最小栈 | 栈、设计 | 中等 | 高 | LeetCode 155 |
| 下一个排列 | 数组、双指针 | 中等 | 高 | LeetCode 31 |
| 组合总和 II | 数组、回溯 | 中等 | 中 | LeetCode 40 |
| 找二叉树左下角的值 | 树、深度优先搜索、广度优先搜索 | 中等 | 低 | LeetCode 513 |
| 最长重复子数组 | 数组、哈希表、字符串匹配 | 中等 | 低 | LeetCode 718 |
| 最接近的三数之和 | 数组、双指针 | 中等 | 中 | LeetCode 16 |
| 电话号码的字母组合 | 回溯、字符串 | 中等 | 中 | LeetCode 17 |
| 括号生成 | 回溯 | 中等 | 高 | LeetCode 22 |
| 在排序数组中查找元素的第一个和最后一个位置 | 数组、二分查找 | 中等 | 中 | LeetCode 34 |
| 跳跃游戏 II | 数组、贪心 | 中等 | 中 | LeetCode 45 |
| 字母异位词分组 | 数组、哈希表、字符串 | 中等 | 高 | LeetCode 49 |
| 合并区间 | 数组、排序 | 中等 | 高 | LeetCode 56 |
| 子集 | 位运算、回溯 | 中等 | 中 | LeetCode 78 |
| 二叉树层序遍历 | 树、广度优先搜索 | 中等 | 高 | LeetCode 102 |
| 数组中的第K个最大元素 | 数组、堆、分治 | 中等 | 高 | LeetCode 215 |
| 删除链表的倒数第N个节点 | 链表、双指针 | 中等 | 中 | LeetCode 19 |
| 搜索旋转排序数组 | 数组、二分查找 | 中等 | 中 | LeetCode 33 |
| K 个一组翻转链表 | 链表、递归 | 中等 | 中 | LeetCode 25 |
| 接雨水 | 栈、双指针 | 困难 | 高 | LeetCode 42 |
| 二叉树的序列化与反序列化 | 树、深度优先搜索 | 困难 | 低 | LeetCode 297 |
| 统计元音字母序列的数目 | 数字DP、背包 | 困难 | 低 | LeetCode 1220 |
| 滑动窗口最大值 | 模拟、优先队列 | 困难 | 高 | LeetCode 239 |
| 二叉树中的最大路径和 | 树、深度优先搜索 | 困难 | 高 | LeetCode 124 |
| 单词接龙 | 广度优先搜索、字符串 | 困难 | 中 | LeetCode 127 |
| 单词接龙 II | 广度优先搜索、字符串 | 困难 | 低 | LeetCode 126 |
| 盈利计划 | 数组、动态规划 | 困难 | 低 | LeetCode 879 |
| 正则表达式匹配 | 字符串、动态规划 | 困难 | 中 | LeetCode 10 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 数组、哈希表 | 简单 | 高 | LeetCode 1 |
| 有效的括号 | 栈、字符串 | 简单 | 高 | LeetCode 20 |
| 环形链表 | 链表、双指针 | 简单 | 高 | LeetCode 141 |
| 爬楼梯 | 动态规划、记忆化搜索 | 简单 | 高 | LeetCode 70 |
| 分发饼干 | 贪心、排序 | 简单 | 高 | LeetCode 455 |
| 买卖股票的最佳时机 II | 数组、动态规划 | 简单 | 高 | LeetCode 122 |
| 二分查找 | 数组、二分查找 | 简单 | 高 | LeetCode 704 |
| 相交链表 | 链表、双指针 | 简单 | 高 | LeetCode 160 |
| 复数乘法 | 数学、字符串 | 简单 | 中等 | LeetCode 537 |
| 岛屿数量 | 深度优先搜索、广度优先搜索 | 中等 | 高 | LeetCode 200 |
| 课程表 | 深度优先搜索、广度优先搜索 | 中等 | 中等 | LeetCode 207 |
| 零钱兑换 | 动态规划 | 中等 | 高 | LeetCode 322 |
| 不同路径 | 动态规划 | 中等 | 高 | LeetCode 62 |
| 每日温度 | 栈、单调栈 | 中等 | 高 | LeetCode 739 |
| 括号生成 | 回溯 | 中等 | 高 | LeetCode 22 |
| 电话号码的字母组合 | 回溯、字符串 | 中等 | 高 | LeetCode 17 |
| 三数之和 | 数组、双指针 | 中等 | 高 | LeetCode 15 |
| 字母异位词分组 | 数组、哈希表、字符串 | 中等 | 高 | LeetCode 49 |
| 合并区间 | 数组、排序 | 中等 | 高 | LeetCode 56 |
| 任务调度器 | 贪心、优先队列 | 中等 | 高 | LeetCode 621 |
| 网络延迟时间 | 图、最短路径 | 中等 | 中等 | LeetCode 743 |
| 廉价机票 | 图、深度优先搜索 | 中等 | 中等 | LeetCode 787 |
| 数组中的第K个最大元素 | 数组、堆、分治 | 中等 | 高 | LeetCode 215 |
| 最长递增子序列 | 数组、动态规划、二分查找 | 中等 | 高 | LeetCode 300 |
| 分割等和子集 | 动态规划、背包问题 | 中等 | 中等 | LeetCode 416 |
| 单词拆分 | 动态规划、记忆化搜索 | 中等 | 高 | LeetCode 139 |
| 目标和 | 动态规划、背包问题 | 中等 | 高 | LeetCode 494 |
| 岛屿的最大面积 | 深度优先搜索、广度优先搜索 | 中等 | 高 | LeetCode 695 |
| 盛最多水的容器 | 数组、双指针 | 中等 | 高 | LeetCode 11 |
| 有效的数独 | 数组、哈希表、回溯 | 中等 | 高 | LeetCode 36 |
| 最近的请求次数 | 设计、滑动窗口 | 中等 | 高 | LeetCode 933 |
| 设计哈希映射 | 设计、哈希表 | 中等 | 中等 | LeetCode 706 |
| 插入删除得数 O(1) - 双向链表实现 | 设计、链表 | 中等 | 高 | LeetCode 707 |
| 推多米诺 | 模拟、队列 | 中等 | 低 | LeetCode 838 |
| 用 Rand7() 实现 Rand10() | 数学、概率 | 中等 | 高 | LeetCode 470 |
| 滑动窗口最大值 | 队列、滑动窗口、堆 | 困难 | 高 | LeetCode 239 |
| 接雨水 | 栈、双指针 | 困难 | 高 | LeetCode 42 |
| 二叉树中的最大路径和 | 树、深度优先搜索 | 困难 | 高 | LeetCode 124 |
| 最小化最大子数组和 | 二分查找、动态规划 | 困难 | 中等 | LeetCode 410 |
| 外星字典 | 图、拓扑排序 | 困难 | 中等 | LeetCode 269 |
| 基本计算器 | 栈、递归 | 困难 | 中等 | LeetCode 224 |
| 表达式添加运算符 | 回溯、动态规划 | 困难 | 中等 | LeetCode 282 |
| 课程表 III | 贪心、优先队列 | 困难 | 中等 | LeetCode 630 |
| 规划兼职工作 | 数组、二分查找、动态规划 | 困难 | 中等 | LeetCode 1235 |
| 强密码检验器 | 字符串、贪心 | 困难 | 低 | LeetCode 420 |
| 滑动谜题 | 广度优先搜索 | 困难 | 低 | LeetCode 773 |
| 最优账单平衡 | 图、最短路径 | 困难 | 中等 | LeetCode 464 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 多数元素 | 数组、分治 | 简单 | 高 | LeetCode 169 |
| 复数乘法 | 数学、字符串 | 简单 | 中 | LeetCode 537 |
| 替换空格 | 字符串、双指针 | 简单 | 高 | 剑指 Offer 05 |
| 斐波那契数列 | 动态规划 | 简单 | 高 | 剑指 Offer 10 - I |
| 矩阵中的路径 | 深度优先搜索、回溯 | 中等 | 高 | 剑指 Offer 12 |
| 机器人的运动范围 | 深度优先搜索、广度优先搜索 | 中等 | 高 | 剑指 Offer 13 |
| 剪绳子 | 动态规划、数学 | 中等 | 高 | 剑指 Offer 14 |
| 数组中的逆序对 | 归并排序、数组 | 中等 | 高 | 剑指 Offer 51 |
| 路径总和 III | 树、深度优先搜索 | 中等 | 高 | LeetCode 437 |
| 乘积最大子数组 | 数组、动态规划 | 中等 | 高 | LeetCode 152 |
| 奇偶排序 | 数组、双指针 | 中等 | 高 | LeetCode 922 |
| 区间和的更改 | 树状数组、区间查询 | 中等 | 高 | LeetCode 307 |
| 用 Rand7() 实现 Rand10() | 数学、概率 | 中等 | 高 | LeetCode 470 |
| 最近的请求次数 | 设计、滑动窗口 | 中等 | 高 | LeetCode 933 |
| 设计哈希映射 | 设计、哈希表 | 中等 | 高 | LeetCode 706 |
| 设计链表 | 设计、链表 | 中等 | 高 | LeetCode 707 |
| 推多米诺 | 模拟、队列 | 中等 | 中 | LeetCode 838 |
| 螺旋矩阵 II | 数组、数学 | 中等 | 高 | LeetCode 59 |
| 第一个只出现一次的字符 | 字符串、哈希表 | 中等 | 高 | 剑指 Offer 50 |
| 和为 s 的两个数字 | 数组、哈希表 | 中等 | 高 | 剑指 Offer 57 |
| 滑动窗口的最大值 | 队列、滑动窗口 | 中等 | 高 | 剑指 Offer 59 - I |
| 圆圈中最后剩下的数 | 数组、数学 | 中等 | 高 | 剑指 Offer 62 |
| 构建乘积数组 | 数组、前缀和 | 中等 | 高 | 剑指 Offer 66 |
| 把数组排成最小的数 | 排序、字符串 | 中等 | 高 | 剑指 Offer 45 |
| 把数字翻译成字符串 | 动态规划 | 中等 | 高 | 剑指 Offer 46 |
| 礼物的最大价值 | 动态规划、矩阵 | 中等 | 高 | 剑指 Offer 47 |
| 数组中数字出现的次数 | 位运算、数组 | 中等 | 高 | 剑指 Offer 56 - I |
| 二叉搜索树的第k大节点 | 树、深度优先搜索 | 中等 | 高 | 剑指 Offer 54 |
| 股票的最大利润 | 数组、动态规划 | 中等 | 高 | 剑指 Offer 63 |
| 岛屿的最大面积 | 深度优先搜索、广度优先搜索 | 中等 | 低 | LeetCode 695 |
| 课程表 II | 图、深度优先搜索 | 中等 | 中 | LeetCode 210 |
| 分隔链表 | 链表、双指针 | 中等 | 低 | LeetCode 86 |
| 解码方法 | 动态规划 | 中等 | 中 | LeetCode 91 |
| 每日温度 | 栈、单调栈 | 中等 | 中 | LeetCode 739 |
| 交错字符串 | 字符串、动态规划 | 中等 | 低 | LeetCode 97 |
| 和为K的子数组 | 数组、哈希表 | 中等 | 中 | LeetCode 560 |
| 前K个高频单词 | 哈希表、堆 | 中等 | 中 | LeetCode 692 |
| 四数之和 | 数组、双指针 | 中等 | 低 | LeetCode 18 |
| 字符串解码 | 栈、字符串 | 中等 | 中 | LeetCode 394 |
| Z字形变换 | 字符串 | 中等 | 低 | LeetCode 6 |
| Fizz Buzz 多倍数 | 线程、设计 | 中等 | 低 | LeetCode 1195 |
| 最长回文子序列 | 字符串、动态规划 | 中等 | 中 | LeetCode 516 |
| 奇偶链表 | 链表、双指针 | 中等 | 低 | LeetCode 328 |
| 区间和的个数 | 数组、动态规划 | 困难 | 低 | LeetCode 327 |
| 通配符匹配 | 字符串、动态规划 | 困难 | 低 | LeetCode 44 |
| 强密码检验器 | 字符串、贪心 | 困难 | 高 | LeetCode 420 |
| 滑动谜题 | 广度优先搜索 | 困难 | 中 | LeetCode 773 |
| 最优账单平衡 | 图、最短路径 | 困难 | 高 | LeetCode 464 |
| 戳气球 | 动态规划、区间 | 困难 | 高 | LeetCode 312 |
| 最小覆盖子串 | 哈希表、滑动窗口 | 困难 | 高 | LeetCode 76 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 多数元素 | 数组、分治 | 简单 | 高 | LeetCode 169 |
| 搜索插入位置 | 数组、二分查找 | 简单 | 高 | LeetCode 35 |
| 二分查找 | 数组、二分查找 | 简单 | 高 | LeetCode 704 |
| 有效的括号 | 栈、字符串 | 简单 | 高 | LeetCode 20 |
| 最大子数组和 | 数组、分治、动态规划 | 简单 | 高 | LeetCode 53 |
| 反转链表 | 链表、递归 | 简单 | 高 | LeetCode 206 |
| 合并两个有序链表 | 链表、递归 | 简单 | 高 | LeetCode 21 |
| 矩阵中的路径 | 深度优先搜索、回溯 | 中等 | 高 | 剑指 Offer 12 |
| 机器人的运动范围 | 深度优先搜索、广度优先搜索 | 中等 | 高 | 剑指 Offer 13 |
| 剪绳子 | 动态规划、数学 | 中等 | 高 | 剑指 Offer 14 |
| 数组中的逆序对 | 归并排序、数组 | 中等 | 高 | 剑指 Offer 51 |
| 路径总和 III | 树、深度优先搜索 | 中等 | 高 | LeetCode 437 |
| 乘积最大子数组 | 数组、动态规划 | 中等 | 高 | LeetCode 152 |
| 奇偶排序 | 数组、双指针 | 中等 | 中 | LeetCode 922 |
| 区间和的更改 | 树状数组、区间查询 | 中等 | 高 | LeetCode 307 |
| 用 Rand7() 实现 Rand10() | 数学、概率 | 中等 | 高 | LeetCode 470 |
| 最近的请求次数 | 设计、滑动窗口 | 中等 | 高 | LeetCode 933 |
| 设计哈希映射 | 设计、哈希表 | 中等 | 高 | LeetCode 706 |
| 插入删除得数 O(1) - 双向链表实现 | 设计、链表 | 中等 | 高 | LeetCode 707 |
| 推多米诺 | 模拟、队列 | 中等 | 中 | LeetCode 838 |
| 搜索旋转排序数组 | 数组、二分查找 | 中等 | 高 | LeetCode 33 |
| 寻找旋转排序数组中的最小值 | 数组、二分查找 | 中等 | 高 | LeetCode 153 |
| 二叉搜索树的第k大节点 | 树、深度优先搜索 | 中等 | 高 | 剑指 Offer 54 |
| 搜索二维矩阵 | 数组、二分查找 | 中等 | 高 | LeetCode 74 |
| 无重复字符的最长子串 | 哈希表、字符串、滑动窗口 | 中等 | 高 | LeetCode 3 |
| 数组中的第K个最大元素 | 数组、堆、分治 | 中等 | 高 | LeetCode 215 |
| 最长递增子序列 | 数组、动态规划、二分查找 | 中等 | 高 | LeetCode 300 |
| 字符串到整型 | 字符串、模拟 | 中等 | 高 | LeetCode 8 |
| 字符串相加 | 字符串、数学 | 中等 | 高 | LeetCode 415 |
| LRU 缓存机制 | 哈希表、双向链表、设计 | 中等 | 高 | LeetCode 146 |
| 跳跃游戏 | 贪心 | 中等 | 中 | LeetCode 55 |
| 组合总和 II | 回溯 | 中等 | 低 | LeetCode 40 |
| 最长递增子序列的长度 | 动态规划 | 中等 | 中 | LeetCode 673 |
| 螺旋矩阵 | 数组 | 中等 | 低 | LeetCode 54 |
| 盛最多水的容器 | 数组、双指针 | 中等 | 中 | LeetCode 11 |
| 寻找重复数 | 链表、二分查找 | 中等 | 低 | LeetCode 287 |
| 最大数 | 排序 | 中等 | 中 | LeetCode 179 |
| 版本号比较 | 双指针 | 中等 | 低 | LeetCode 165 |
| 删除排序链表中的重复元素 II | 链表 | 中等 | 中 | LeetCode 82 |
| 下一个排列 | 数组 | 中等 | 低 | LeetCode 31 |
| 递增的数字 | 贪心 | 中等 | 中 | LeetCode 738 |
| 打家劫舍 II | 动态规划 | 中等 | 低 | LeetCode 213 |
| 最小覆盖子串 | 哈希表、滑动窗口 | 困难 | 高 | LeetCode 76 |
| 两个排序数组的中位数 | 数组、二分查找 | 困难 | 高 | LeetCode 4 |
| 正则表达式匹配 | 字符串、动态规划 | 困难 | 高 | LeetCode 10 |
| 通配符匹配 | 字符串、动态规划 | 困难 | 高 | LeetCode 44 |
| 编辑距离 | 动态规划 | 困难 | 高 | LeetCode 72 |
| 戳气球 | 动态规划、区间 | 困难 | 高 | LeetCode 312 |
| 最佳买卖股票时机含冷冻期 | 数组、动态规划 | 困难 | 高 | LeetCode 309 |
| 买卖股票的最佳时机 IV | 数组、动态规划 | 困难 | 高 | LeetCode 188 |
| 二叉树的序列化与反序列化 | 树、深度优先搜索 | 困难 | 高 | LeetCode 297 |
| 表达式添加运算符 | 回溯、动态规划 | 困难 | 高 | LeetCode 282 |
| 基本计算器 | 栈、递归 | 困难 | 高 | LeetCode 224 |
| 外星字典 | 图、拓扑排序 | 困难 | 高 | LeetCode 269 |
| 课程表 III | 贪心、优先队列 | 困难 | 高 | LeetCode 630 |
| 规划兼职工作 | 数组、二分查找、动态规划 | 困难 | 高 | LeetCode 1235 |
| 序列的重建 | 图、拓扑排序 | 困难 | 中 | LeetCode 444 |
| 最大化工具 | 贪心、优先队列 | 困难 | 中 | LeetCode 1648 |
| 强密码检验器 | 字符串、贪心 | 困难 | 中 | LeetCode 420 |
| 滑动谜题 | 广度优先搜索 | 困难 | 中 | LeetCode 773 |
| 最优账单平衡 | 图、最短路径 | 困难 | 中 | LeetCode 464 |
| K 个一组翻转链表 | 链表、递归 | 困难 | 高 | LeetCode 25 |
| 最长有效括号 | 字符串、栈、动态规划 | 困难 | 中 | LeetCode 32 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 多数元素 | 数组、分治 | 简单 | 高 | LeetCode 169 |
| 搜索插入位置 | 数组、二分查找 | 简单 | 高 | LeetCode 35 |
| 替换空格 | 字符串、双指针 | 简单 | 高 | 剑指 Offer 05 |
| 斐波那契数列 | 动态规划 | 简单 | 中 | LeetCode 509 |
| 旋转数组的最小数字 | 数组、二分查找 | 简单 | 高 | 剑指 Offer 11 |
| 用两个栈实现队列 | 栈、设计 | 简单 | 高 | 剑指 Offer 09 |
| 调整数组顺序使奇数位于偶数前面 | 数组、双指针 | 简单 | 中 | 剑指 Offer 21 |
| 反转链表 | 链表、递归 | 简单 | 高 | 剑指 Offer 24 |
| 有效的括号 | 栈、字符串 | 简单 | 高 | LeetCode 20 |
| 合并两个有序链表 | 链表、递归 | 简单 | 高 | LeetCode 21 |
| 矩阵中的路径 | 深度优先搜索、回溯 | 中等 | 高 | 剑指 Offer 12 |
| 机器人的运动范围 | 深度优先搜索、广度优先搜索 | 中等 | 高 | 剑指 Offer 13 |
| 剪绳子 | 动态规划、数学 | 中等 | 高 | 剑指 Offer 14 |
| 数组中的逆序对 | 归并排序、数组 | 中等 | 中 | 剑指 Offer 51 |
| 路径总和 III | 树、深度优先搜索 | 中等 | 中 | LeetCode 437 |
| 乘积最大子数组 | 数组、动态规划 | 中等 | 中 | LeetCode 152 |
| 奇偶排序 | 数组、双指针 | 中等 | 中 | LeetCode 922 |
| 区间和的更改 | 树状数组、区间查询 | 中等 | 中 | LeetCode 307 |
| 用 Rand7() 实现 Rand10() | 数学、概率 | 中等 | 中 | LeetCode 470 |
| 最近的请求次数 | 设计、滑动窗口 | 中等 | 中 | LeetCode 933 |
| 设计哈希映射 | 设计、哈希表 | 中等 | 高 | LeetCode 706 |
| 插入删除得数 O(1) - 双向链表实现 | 设计、链表 | 中等 | 高 | LeetCode 707 |
| 推多米诺 | 模拟、队列 | 中等 | 中 | LeetCode 838 |
| 搜索旋转排序数组 | 数组、二分查找 | 中等 | 高 | LeetCode 33 |
| 寻找旋转排序数组中的最小值 | 数组、二分查找 | 中等 | 高 | LeetCode 153 |
| 二叉搜索树的第k大节点 | 树、深度优先搜索 | 中等 | 中 | 剑指 Offer 54 |
| 树的子结构 | 树、深度优先搜索 | 中等 | 高 | 剑指 Offer 26 |
| 二叉树的镜像 | 树、递归 | 中等 | 高 | 剑指 Offer 27 |
| 对称的二叉树 | 树、递归 | 中等 | 高 | 剑指 Offer 28 |
| 顺时针打印矩阵 | 数组、模拟 | 中等 | 高 | 剑指 Offer 29 |
| 包含min函数的栈 | 栈、设计 | 中等 | 高 | 剑指 Offer 30 |
| 从上到下打印二叉树 | 树、广度优先搜索 | 中等 | 高 | 剑指 Offer 32 - I |
| 二叉树中和为某一值的路径 | 树、深度优先搜索 | 中等 | 中 | 剑指 Offer 34 |
| 复杂链表的复制 | 链表、哈希表 | 中等 | 中 | 剑指 Offer 35 |
| 无重复字符的最长子串 | 哈希表、字符串、滑动窗口 | 中等 | 高 | LeetCode 3 |
| 三数之和 | 数组、双指针 | 中等 | 高 | LeetCode 15 |
| 数组中的第K个最大元素 | 数组、堆、分治 | 中等 | 高 | LeetCode 215 |
| 全排列 | 数组、回溯 | 中等 | 高 | LeetCode 46 |
| 环形链表 II | 链表、双指针 | 中等 | 高 | LeetCode 142 |
| 排序数组 | 数组、排序 | 中等 | 高 | LeetCode 912 |
| LRU 缓存机制 | 哈希表、双向链表、设计 | 中等 | 高 | LeetCode 146 |
| 复数乘法 | 数学、字符串 | 中等 | 中 | LeetCode 537 |
| 组合 | 回溯 | 中等 | 低 | LeetCode 77 |
| 在排序数组中查找元素的第一个和最后一个位置 | 数组、二分查找 | 中等 | 低 | LeetCode 34 |
| 和为 K 的子数组 | 数组、哈希表 | 中等 | 低 | LeetCode 560 |
| 逆波兰表达式求值 | 栈 | 中等 | 低 | LeetCode 150 |
| 二叉树的右视图 | 树、广度优先搜索 | 中等 | 低 | LeetCode 199 |
| 岛屿的最大面积 | 深度优先搜索、广度优先搜索 | 中等 | 低 | LeetCode 695 |
| 二叉树层序遍历 II | 树、广度优先搜索 | 中等 | 低 | LeetCode 107 |
| 最小覆盖子串 | 哈希表、滑动窗口 | 困难 | 中 | LeetCode 76 |
| 戳气球 | 动态规划、区间 | 困难 | 中 | LeetCode 312 |
| 最优账单平衡 | 图、最短路径 | 困难 | 中 | LeetCode 464 |
| 强密码检验器 | 字符串、贪心 | 困难 | 中 | LeetCode 420 |
| 滑动谜题 | 广度优先搜索 | 困难 | 中 | LeetCode 773 |
| 滑动窗口最大值 | 队列、滑动窗口、堆 | 困难 | 低 | LeetCode 239 |
| 分发糖果 | 贪心 | 困难 | 低 | LeetCode 135 |
| 缺失的第一个正数 | 数组 | 困难 | 低 | LeetCode 41 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 位1的个数 | 位运算 | 简单 | 高 | LeetCode 191 |
| 旋转数组的最小数字 | 数组、二分查找 | 简单 | 高 | 剑指 Offer 11 |
| 用两个栈实现队列 | 栈、设计 | 简单 | 高 | 剑指 Offer 09 |
| 调整数组顺序使奇数位于偶数前面 | 数组、双指针 | 简单 | 中 | 剑指 Offer 21 |
| 二叉树的最大深度 | 树、深度优先搜索 | 简单 | 中 | LeetCode 104 |
| 翻转二叉树 | 树、深度优先搜索 | 简单 | 低 | LeetCode 226 |
| 路径总和 | 树、深度优先搜索 | 简单 | 低 | LeetCode 112 |
| 左旋转字符串 | 字符串、模拟 | 简单 | 高 | 剑指 Offer 58 - II |
| 不用加减乘除做加法 | 位运算 | 简单 | 高 | 剑指 Offer 65 |
| 替换空格 | 字符串、双指针 | 简单 | 高 | 剑指 Offer 05 |
| 斐波那契数列 | 动态规划 | 简单 | 中 | 剑指 Offer 10 - I |
| 整数反转 | 数学 | 简单 | 中 | LeetCode 7 |
| 有效的括号 | 栈、字符串 | 简单 | 高 | LeetCode 20 |
| 最长连续递增子序列 | 数组、动态规划 | 中等 | 低 | LeetCode 674 |
| 最长递增子序列 | 数组、动态规划、二分查找 | 中等 | 高 | LeetCode 300 |
| 实现Trie树(前缀树) | 设计、数据结构 | 中等 | 中 | LeetCode 208 |
| 包含重复数字 | 数组、滑动窗口 | 中等 | 低 | LeetCode 220 |
| 二叉树展开为链表 | 树、深度优先搜索 | 中等 | 低 | LeetCode 114 |
| 对称的二叉树 | 树、递归 | 中等 | 中 | LeetCode 101 |
| 二叉树的层序遍历 | 树、广度优先搜索 | 中等 | 中 | LeetCode 102 |
| 树中两个节点的最低公共祖先 | 树、深度优先搜索 | 中等 | 中 | 剑指 Offer 68 - I |
| 二叉树的最近公共祖先 | 树、深度优先搜索 | 中等 | 中 | LeetCode 236 |
| 包含min函数的栈 | 栈、设计 | 中等 | 高 | LeetCode 155 |
| 滑动窗口的最大值 | 队列、滑动窗口 | 中等 | 高 | LeetCode 239 |
| 数组中数字出现的次数 | 位运算、数组 | 中等 | 高 | 剑指 Offer 56 - I |
| 翻转单词顺序 | 字符串、双指针 | 中等 | 高 | 剑指 Offer 58 - I |
| 扑克牌中的顺子 | 数组、排序 | 中等 | 低 | 剑指 Offer 61 |
| 求1+2+…+n | 数学、位运算 | 中等 | 中 | 剑指 Offer 64 |
| 把字符串转换成整数 | 字符串、数学 | 中等 | 高 | 剑指 Offer 67 |
| 矩阵中的路径 | 深度优先搜索、回溯 | 中等 | 中 | 剑指 Offer 12 |
| 机器人的运动范围 | 深度优先搜索、广度优先搜索 | 中等 | 中 | 剑指 Offer 13 |
| 剪绳子 | 动态规划、数学 | 中等 | 中 | 剑指 Offer 14 - I |
| 把数组排成最小的数 | 排序、字符串 | 中等 | 低 | 剑指 Offer 45 |
| 把数字翻译成字符串 | 动态规划 | 中等 | 低 | 剑指 Offer 46 |
| 礼物的最大价值 | 动态规划、矩阵 | 中等 | 低 | 剑指 Offer 47 |
| 第一个只出现一次的字符 | 字符串、哈希表 | 中等 | 高 | 剑指 Offer 50 |
| 丑数 | 数学、堆 | 中等 | 低 | 剑指 Offer 49 |
| 和为 s 的两个数字 | 数组、哈希表 | 中等 | 中 | 剑指 Offer 57 |
| 圆圈中最后剩下的数 | 数组、数学 | 中等 | 中 | 剑指 Offer 62 |
| 构建乘积数组 | 数组、前缀和 | 中等 | 中 | 剑指 Offer 66 |
| 无重复字符的最长子串 | 哈希表、字符串、滑动窗口 | 中等 | 高 | LeetCode 3 |
| 每日温度 | 栈、单调栈 | 中等 | 中 | LeetCode 739 |
| 砖墙 | 数组、哈希表 | 中等 | 低 | LeetCode 554 |
| 三数之和 | 数组、双指针 | 中等 | 高 | LeetCode 15 |
| 全排列 | 数组、回溯 | 中等 | 中 | LeetCode 46 |
| 岛屿数量 | 深度优先搜索、广度优先搜索 | 中等 | 中 | LeetCode 200 |
| 合并区间 | 数组、排序 | 中等 | 中 | LeetCode 56 |
| 零钱兑换 | 动态规划 | 中等 | 中 | LeetCode 322 |
| 最长回文子串 | 字符串、动态规划 | 中等 | 高 | LeetCode 5 |
| 去除重复字母 | 字符串、单调栈 | 中等 | 低 | LeetCode 316 |
| 基本计算器 II | 栈、数学 | 中等 | 低 | LeetCode 227 |
| 字符串解码 | 栈、字符串 | 中等 | 中 | LeetCode 394 |
| 复原IP地址 | 字符串、回溯算法 | 中等 | 低 | LeetCode 93 |
| K 个一组翻转链表 | 链表、递归 | 困难 | 中 | LeetCode 25 |
| 合并K个升序链表 | 链表、堆、分治 | 困难 | 中 | LeetCode 23 |
| 正则表达式匹配 | 字符串、动态规划 | 困难 | 低 | LeetCode 10 |
| 最小覆盖子串 | 哈希表、滑动窗口 | 困难 | 低 | LeetCode 76 |
| 寻找两个正序数组的中位数 | 数组、二分查找 | 困难 | 中 | LeetCode 4 |
| 柱状图中最大的矩形 | 栈、数组、单调栈 | 困难 | 低 | LeetCode 84 |
| 编辑距离 | 字符串、动态规划 | 困难 | 中 | LeetCode 72 |
| 单词接龙 | 图、广度优先搜索 | 困难 | 低 | LeetCode 127 |
| 天际线问题 | 树状数组、线段树、扫描线 | 困难 | 低 | LeetCode 218 |
| 戳气球 | 动态规划、区间 | 困难 | 低 | LeetCode 312 |
| 最优账单平衡 | 图、动态规划、状态压缩 | 困难 | 低 | LeetCode 464 |
| 题目名称 | 标签 | 难度 | 频率 | 题目链接 |
|---|---|---|---|---|
| 数组中出现次数超过一半的数字 | 数组、哈希表、分治 | 简单 | 高 | 剑指 Offer 39 |
| 最小的k个数 | 数组、分治、堆 | 简单 | 高 | 剑指 Offer 40 |
| 数据流中的第k大元素 | 堆、设计 | 简单 | 高 | LeetCode 703 |
| 有效的括号 | 栈、字符串 | 简单 | 高 | LeetCode 20 |
| 反转链表 | 链表、递归 | 简单 | 高 | LeetCode 206 |
| 合并两个有序链表 | 链表、递归 | 简单 | 高 | LeetCode 21 |
| 最大子数组和 | 数组、分治、动态规划 | 简单 | 高 | LeetCode 53 |
| 合并两个有序数组 | 数组、双指针 | 简单 | 高 | LeetCode 88 |
| 两数相加 | 链表、数学 | 中等 | 高 | LeetCode 2 |
| 颜色分类 | 数组、双指针、排序 | 中等 | 高 | LeetCode 75 |
| 字符串解码 | 栈、字符串 | 中等 | 高 | LeetCode 394 |
| 岛屿数量 | 深度优先搜索、广度优先搜索、并查集 | 中等 | 高 | LeetCode 200 |
| 最长回文子串 | 字符串、动态规划 | 中等 | 高 | LeetCode 5 |
| 复杂链表的复制 | 链表、哈希表 | 中等 | 高 | 剑指 Offer 35 |
| 二叉搜索树的后序遍历序列 | 栈、树、二叉搜索树 | 中等 | 高 | 剑指 Offer 33 |
| 把二叉树打印成多行 | 树、广度优先搜索 | 中等 | 中 | 剑指 Offer 32 - II |
| 剪绳子 II | 数学、动态规划 | 中等 | 中 | 剑指 Offer 14 - II |
| 无重复字符的最长子串 | 哈希表、字符串、滑动窗口 | 中等 | 高 | LeetCode 3 |
| 二叉树的层序遍历 | 树、广度优先搜索 | 中等 | 高 | LeetCode 102 |
| 数组中的第K个最大元素 | 数组、堆、分治 | 中等 | 高 | LeetCode 215 |
| 重排链表 | 链表、栈 | 中等 | 中 | LeetCode 143 |
| 三数之和 | 数组、双指针 | 中等 | 高 | LeetCode 15 |
| 用栈实现队列 | 栈、设计 | 中等 | 中 | LeetCode 232 |
| 用队列实现栈 | 设计、队列 | 中等 | 中 | LeetCode 225 |
| 删除链表的倒数第N个结点 | 链表、双指针 | 中等 | 高 | LeetCode 19 |
| 搜索旋转排序数组 | 数组、二分查找 | 中等 | 中 | LeetCode 33 |
| 最长公共子序列 | 数组、动态规划 | 中等 | 中 | LeetCode 1143 |
| 数字序列中某一位的数字 | 数学、二分查找 | 中等 | 中 | 剑指 Offer 44 |
| 编辑距离 | 字符串、动态规划 | 困难 | 中 | LeetCode 72 |
| 最长有效括号 | 字符串、栈、动态规划 | 困难 | 中 | LeetCode 32 |
| 数据流的中位数 | 设计、堆 | 困难 | 中 | LeetCode 295 |
| 寻找两个正序数组的中位数 | 数组、二分查找 | 困难 | 中 | LeetCode 4 |
| 柱状图中最大的矩形 | 栈、数组 | 困难 | 中 | LeetCode 84 |
| 天际线问题 | 树状数组、线段树、扫描线 | 困难 | 低 | LeetCode 218 |
| 序列化二叉树 | 树、深度优先搜索、广度优先搜索 | 困难 | 低 | 剑指 Offer 37 |
| 最大矩形 | 栈、数组、动态规划 | 困难 | 低 | LeetCode 85 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 除自身以外数组的乘积 | 中等 | 数组, 前缀和 | 中 | LeetCode 238 |
| 盛最多水的容器 | 中等 | 数组, 双指针 | 中 | LeetCode 11 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| 旋转数组 | 中等 | 数组, 数学 | 低 | LeetCode 189 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 低 | LeetCode 146 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 课程表 | 中等 | 图, 深度优先搜索 | 低 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 低 | LeetCode 200 |
| 最长回文子串 | 中等 | 字符串, 动态规划 | 低 | LeetCode 5 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 全排列 | 中等 | 回溯, 数组 | 低 | LeetCode 46 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 二叉树的序列化与反序列化 | 困难 | 树, 字符串 | 低 | LeetCode 297 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 设计哈希映射 | 简单 | 哈希表, 设计 | 中 | LeetCode 706 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 三数之和 | 中等 | 数组, 双指针 | 中 | LeetCode 15 |
| 删除链表的倒数第N个结点 | 中等 | 链表, 双指针 | 中 | LeetCode 19 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 滑动窗口最大值 | 中等 | 数组, 滑动窗口 | 高 | LeetCode 239 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 蓄水池抽样 | 中等 | 数学, 拒绝采样 | 低 | LeetCode 382 |
| 二叉树的序列化与反序列化 | 困难 | 树, 字符串 | 低 | LeetCode 297 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 相交链表 | 简单 | 链表, 双指针 | 低 | LeetCode 160 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 滑动窗口最大值 | 中等 | 数组, 滑动窗口 | 高 | LeetCode 239 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| K 站中转内最便宜的航班 | 中等 | 图, 动态规划 | 中 | LeetCode 787 |
| 下一个排列 | 中等 | 数组, 双指针 | 低 | LeetCode 31 |
| 重新安排行程 | 困难 | 图, 深度优先搜索 | 中 | LeetCode 332 |
| 公交路线 | 中等 | 广度优先搜索, 数组 | 低 | LeetCode 815 |
| 三数之和 | 中等 | 数组, 双指针 | 低 | LeetCode 15 |
| 删除链表的倒数第N个结点 | 中等 | 链表, 双指针 | 低 | LeetCode 19 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 多数元素 | 简单 | 数组, 位运算 | 低 | LeetCode 169 |
| 接雨水 | 困难 | 数组, 双指针 | 高 | LeetCode 42 |
| 最小覆盖子串 | 困难 | 哈希表, 滑动窗口 | 高 | LeetCode 76 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 滑动窗口最大值 | 中等 | 数组, 滑动窗口 | 高 | LeetCode 239 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 三数之和 | 中等 | 数组, 双指针 | 低 | LeetCode 15 |
| 打家劫舍 | 中等 | 动态规划, 数组 | 低 | LeetCode 198 |
| 分割等和子集 | 中等 | 动态规划, 数组 | 低 | LeetCode 416 |
| 从前序与中序遍历序列构造二叉树 | 中等 | 树, 深度优先搜索 | 低 | LeetCode 105 |
| 重排链表 | 中等 | 链表, 双指针 | 低 | LeetCode 143 |
| 排序链表 | 中等 | 链表, 双指针 | 低 | LeetCode 148 |
| 二叉树的层序遍历 | 中等 | 树, 广度优先搜索 | 低 | LeetCode 102 |
| 版本号比较 | 中等 | 字符串, 双指针 | 低 | LeetCode 165 |
| 最小栈 | 中等 | 栈, 设计 | 低 | LeetCode 155 |
| 柱状图中最大的矩形 | 困难 | 数组, 栈 | 低 | LeetCode 84 |
| 合并K个有序链表 | 困难 | 链表, 堆 | 低 | LeetCode 23 |
| 寻找中位数 | 困难 | 数组, 二分查找 | 低 | LeetCode 295 |
| 滑动窗口的中位数 | 困难 | 堆, 设计 | 低 | LeetCode 295 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 求根节点到叶节点数字之和 | 中等 | 树, 深度优先搜索 | 中 | LeetCode 129 |
| 被围绕的区域 | 中等 | 深度优先搜索, 广度优先搜索 | 低 | LeetCode 130 |
| 二叉树的层序遍历 | 中等 | 树, 广度优先搜索 | 低 | LeetCode 102 |
| 最长递增子序列 | 中等 | 动态规划, 数组 | 高 | LeetCode 300 |
| 交错字符串 | 中等 | 动态规划, 字符串 | 中 | LeetCode 97 |
| 接雨水 | 困难 | 数组, 双指针 | 高 | LeetCode 42 |
| 最长回文子串 | 中等 | 字符串, 动态规划 | 低 | LeetCode 5 |
| 三数之和 | 中等 | 数组, 双指针 | 低 | LeetCode 15 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 二叉树的层序遍历 | 中等 | 树, 广度优先搜索 | 高 | LeetCode 102 |
| 路径总和 | 简单 | 树, 深度优先搜索 | 中 | LeetCode 112 |
| 翻转二叉树 | 简单 | 树, 递归 | 低 | LeetCode 226 |
| Android 解锁图案 | 中等 | 深度优先搜索, 回溯 | 低 | LeetCode 351 |
| 接雨水 | 困难 | 数组, 双指针 | 低 | LeetCode 42 |
| 三数之和 | 中等 | 数组, 双指针 | 低 | LeetCode 15 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 链表反转 | 简单 | 链表, 递归 | 中 | LeetCode 206 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 盛最多水的容器 | 中等 | 数组, 双指针 | 中 | LeetCode 11 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 最小覆盖子串 | 困难 | 哈希表, 滑动窗口 | 低 | LeetCode 76 |
| 最长有效括号 | 中等 | 栈, 字符串 | 低 | LeetCode 32 |
| 串联所有单词的子串 | 中等 | 哈希表, 滑动窗口 | 低 | LeetCode 30 |
| 二叉树中的最大路径和 | 困难 | 树, 深度优先搜索 | 低 | LeetCode 124 |
| 接雨水 | 困难 | 数组, 双指针 | 低 | LeetCode 42 |
| 三数之和 | 中等 | 数组, 双指针 | 低 | LeetCode 15 |
| 字母异位词分组 | 中等 | 字符串, 哈希表 | 低 | LeetCode 49 |
| 搜索旋转排序数组 | 中等 | 二分查找, 数组 | 低 | LeetCode 33 |
| 跳跃游戏 | 中等 | 贪心, 数组 | 低 | LeetCode 55 |
| 单词拆分 | 中等 | 动态规划, 字符串 | 低 | LeetCode 139 |
| 最长公共子序列 | 中等 | 动态规划, 字符串 | 低 | LeetCode 1143 |
| 组合总和 | 中等 | 回溯, 数组 | 低 | LeetCode 39 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 打家劫舍 | 中等 | 动态规划, 数组 | 高 | LeetCode 198 |
| 分割等和子集 | 中等 | 动态规划, 数组 | 中 | LeetCode 416 |
| 任务调度器 | 中等 | 贪心, 数组 | 中 | LeetCode 621 |
| 题目名称 | 难度 | 标签 | 频率 | 题目链接 |
|---|---|---|---|---|
| 两数之和 | 简单 | 数组, 哈希表 | 高 | LeetCode 1 |
| 有效的括号 | 简单 | 栈, 字符串 | 高 | LeetCode 20 |
| 合并两个有序链表 | 简单 | 链表, 递归 | 高 | LeetCode 21 |
| 爬楼梯 | 简单 | 动态规划, 数组 | 中 | LeetCode 70 |
| 验证回文串 | 简单 | 字符串, 双指针 | 中 | LeetCode 125 |
| 最大子数组和 | 中等 | 数组, 动态规划 | 高 | LeetCode 53 |
| 买卖股票的最佳时机 | 中等 | 数组, 动态规划 | 高 | LeetCode 121 |
| 无重复字符的最长子串 | 中等 | 字符串, 滑动窗口 | 中 | LeetCode 3 |
| 数组中的第K个最大元素 | 中等 | 数组, 堆 | 中 | LeetCode 215 |
| LRU缓存机制 | 中等 | 哈希表, 双向链表 | 中 | LeetCode 146 |
| 课程表 | 中等 | 图, 深度优先搜索 | 中 | LeetCode 207 |
| 岛屿数量 | 中等 | 深度优先搜索, 广度优先搜索 | 中 | LeetCode 200 |
| 最小路径和 | 中等 | 动态规划, 矩阵 | 中 | LeetCode 64 |
| 最长递增子序列 | 中等 | 动态规划, 数组 | 高 | LeetCode 300 |
| 交错字符串 | 中等 | 动态规划, 字符串 | 中 | LeetCode 97 |
| 编辑距离 | 中等 | 动态规划, 字符串 | 中 | LeetCode 72 |
本仓库题目数据来源于以下可靠渠道:
- LeetCode:核心题库与原题链接。
- 牛客网:大厂笔试/面试真题复盘与变体描述。
- CodeTop:高频题统计。
免责声明:
- 本仓库所有题目及相关内容仅用于学习交流,刷题时建议结合官方题解验证思路。
- 资源整理过程中可能存在链接失效、信息误差等纰漏,若发现问题,欢迎在 Issue 中留言反馈,感谢你的指正与支持!
感谢你对本仓库的支持!我们欢迎所有贡献,包括报告错误、添加新题目、替换死链。你的反馈能让资源更丰富和准确,帮助更多人备战大厂面试。
-
报告问题:在 Issues 开新 Issue。描述问题(如“字节跳动表格中 LC 20 链接失效”),我们会尽快修复。
-
提交 Pull Request (PR):
- Fork 仓库,创建分支(如
fix/byte-link)。 - 更新表格格式:保持一致(题目名 | 标签 | 难度 | 频率 | LeetCode 链接)。
- 新题目建议:优先高频/2025 新考点,附来源。
- Commit 消息:简洁描述变更(如 "Update: Fix Alibaba LC 15 link")。
- Push 到你的 Fork,创建 PR 链接相关 Issue。
- Fork 仓库,创建分支(如