热门企业题库
谷歌
脸书
苹果
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 24 | |
236 | 二叉树的最近公共祖先 | [✓] | 树 深度优先搜索 二叉树 | 19 | |
236 | 二叉树的最近公共祖先 | [✓] | 树 深度优先搜索 二叉树 | 18 | |
1095 | 山脉数组中查找目标值 | 数组 二分查找 交互 | 18 | ||
124 | 二叉树中的最大路径和 | [✓] | 树 深度优先搜索 动态规划 1+ | 17 | |
121 | 买卖股票的最佳时机 | [✓] | 数组 动态规划 | 16 | |
273 | 整数转换英文表示 | 递归 数学 字符串 | 16 | ||
767 | 重构字符串 | 贪心 哈希表 字符串 3+ | 16 | ||
692 | 前K个高频单词 | 字典树 哈希表 字符串 4+ | 16 | ||
642 | 设计搜索自动补全系统 🔒 | 深度优先搜索 设计 字典树 4+ | 16 | ||
1547 | 切棍子的最小成本 | 数组 动态规划 排序 | 15 | ||
743 | 网络延迟时间 | 深度优先搜索 广度优先搜索 图 2+ | 14 | ||
722 | 删除注释 | 数组 字符串 | 14 | ||
398 | 随机数索引 | 水塘抽样 哈希表 数学 1+ | 14 | ||
54 | 螺旋矩阵 | [✓] | 数组 矩阵 模拟 | 14 | |
725 | 分隔链表 | 链表 | 14 | ||
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 14 | |
308 | 二维区域和检索 - 矩阵可修改 🔒 | 设计 树状数组 线段树 2+ | 13 | ||
309 | 买卖股票的最佳时机含冷冻期 | [✓] | 数组 动态规划 | 12 | |
867 | 转置矩阵 | 数组 矩阵 模拟 | 12 | ||
295 | 数据流的中位数 | [✓] | 设计 双指针 数据流 2+ | 12 | |
135 | 分发糖果 | [✓] | 贪心 数组 | 11 | |
560 | 和为 K 的子数组 | [✓] | 数组 哈希表 前缀和 | 11 | |
186 | 反转字符串中的单词 II 🔒 | 双指针 字符串 | 7 |
亚马逊
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
106 | 从中序与后序遍历序列构造二叉树 | [✓] | 树 数组 哈希表 2+ | 23 | |
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 21 | |
49 | 字母异位词分组 | [✓] | 数组 哈希表 字符串 1+ | 19 | |
116 | 填充每个节点的下一个右侧节点指针 | [✓] | 树 深度优先搜索 广度优先搜索 2+ | 19 | |
200 | 岛屿数量 | [✓] | 深度优先搜索 广度优先搜索 并查集 2+ | 18 | |
210 | 课程表 II | [✓] | 深度优先搜索 广度优先搜索 图 1+ | 16 | |
48 | 旋转图像 | [✓] | 数组 数学 矩阵 | 16 | |
151 | 反转字符串中的单词 | [✓] | 双指针 字符串 | 15 | |
126 | 单词接龙 II | 广度优先搜索 哈希表 字符串 1+ | 15 | ||
56 | 合并区间 | [✓] | 数组 排序 | 14 | |
322 | 零钱兑换 | [✓] | 广度优先搜索 数组 动态规划 | 14 | |
253 | 会议室 II 🔒 | 贪心 数组 双指针 3+ | 14 | ||
445 | 两数相加 II | [✓] | 栈 链表 数学 | 14 | |
472 | 连接词 | 深度优先搜索 字典树 数组 2+ | 14 | ||
381 | O(1) 时间插入、删除和获取随机元素 - 允许重复 | 设计 数组 哈希表 2+ | 14 | ||
238 | 除自身以外数组的乘积 | [✓] | 数组 前缀和 | 14 | |
99 | 恢复二叉搜索树 | [✓] | 树 深度优先搜索 二叉搜索树 1+ | 12 | |
121 | 买卖股票的最佳时机 | [✓] | 数组 动态规划 | 12 | |
240 | 搜索二维矩阵 II | [✓] | 数组 二分查找 分治 1+ | 12 | |
47 | 全排列 II | [✓] | 数组 回溯 | 12 | |
63 | 不同路径 II | [✓] | 数组 动态规划 矩阵 | 11 | |
279 | 完全平方数 | [✓] | 广度优先搜索 数学 动态规划 | 11 | |
212 | 单词搜索 II | [✓] | 字典树 数组 字符串 2+ | 10 | |
937 | 重新排列日志文件 | 数组 字符串 排序 | 7 | ||
224 | 基本计算器 | [✓] | 栈 递归 数学 1+ | 6 | |
17 | 电话号码的字母组合 | [✓] | 哈希表 字符串 回溯 | 6 | |
692 | 前K个高频单词 | 字典树 哈希表 字符串 4+ | 6 | ||
23 | 合并 K 个升序链表 | [✓] | 链表 分治 堆(优先队列) 1+ | 6 | |
295 | 数据流的中位数 | [✓] | 设计 双指针 数据流 2+ | 4 | |
348 | 设计井字棋 🔒 | 设计 数组 哈希表 2+ | 4 | ||
799 | 香槟塔 | 动态规划 | 3 | ||
387 | 字符串中的第一个唯一字符 | 队列 哈希表 字符串 1+ | 3 | ||
155 | 最小栈 | [✓] | 栈 设计 | 3 | |
140 | 单词拆分 II | 字典树 记忆化搜索 数组 4+ | 2 | ||
828 | 统计子串中的唯一字符 | 哈希表 字符串 动态规划 | 2 |
微软
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
103 | 二叉树的锯齿形层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 22 | |
1448 | 统计二叉树中好节点的数目 | 树 深度优先搜索 广度优先搜索 1+ | 18 | ||
46 | 全排列 | [✓] | 数组 回溯 | 16 | |
297 | 二叉树的序列化与反序列化 | [✓] | 树 深度优先搜索 广度优先搜索 3+ | 14 | |
4 | 寻找两个正序数组的中位数 | [✓] | 数组 二分查找 分治 | 14 | |
124 | 二叉树中的最大路径和 | [✓] | 树 深度优先搜索 动态规划 1+ | 14 | |
340 | 至多包含 K 个不同字符的最长子串 🔒 | 哈希表 字符串 滑动窗口 | 14 | ||
210 | 课程表 II | [✓] | 深度优先搜索 广度优先搜索 图 1+ | 12 | |
117 | 填充每个节点的下一个右侧节点指针 II | [✓] | 树 深度优先搜索 广度优先搜索 2+ | 12 | |
45 | 跳跃游戏 II | [✓] | 贪心 数组 动态规划 | 11 | |
1258 | 近义词句子 🔒 | 并查集 数组 哈希表 2+ | 11 | ||
5 | 最长回文子串 | [✓] | 双指针 字符串 动态规划 | 10 | |
1254 | 统计封闭岛屿的数目 | 深度优先搜索 广度优先搜索 并查集 2+ | 10 | ||
116 | 填充每个节点的下一个右侧节点指针 | [✓] | 树 深度优先搜索 广度优先搜索 2+ | 10 | |
987 | 二叉树的垂序遍历 | 树 深度优先搜索 广度优先搜索 3+ | 9 | ||
105 | 从前序与中序遍历序列构造二叉树 | [✓] | 树 数组 哈希表 2+ | 9 | |
442 | 数组中重复的数据 | [✓] | 数组 哈希表 | 9 | |
341 | 扁平化嵌套列表迭代器 | 栈 树 深度优先搜索 3+ | 8 | ||
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 7 | |
487 | 最大连续1的个数 II 🔒 | 数组 动态规划 滑动窗口 | 1 |
腾讯
百度
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
206 | 反转链表 | [✓] | 递归 链表 | 61 | |
215 | 数组中的第K个最大元素 | [✓] | 数组 分治 快速选择 2+ | 34 | |
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 32 | |
15 | 三数之和 | [✓] | 数组 双指针 排序 | 24 | |
300 | 最长递增子序列 | [✓] | 数组 二分查找 动态规划 | 23 | |
141 | 环形链表 | [✓] | 哈希表 链表 双指针 | 21 | |
179 | 最大数 | 贪心 数组 字符串 1+ | 21 | ||
232 | 用栈实现队列 | [✓] | 栈 设计 队列 | 20 | |
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 18 | |
112 | 路径总和 | [✓] | 树 深度优先搜索 广度优先搜索 1+ | 17 | |
104 | 二叉树的最大深度 | [✓] | 树 深度优先搜索 广度优先搜索 1+ | 17 | |
46 | 全排列 | [✓] | 数组 回溯 | 16 | |
19 | 删除链表的倒数第 N 个结点 | [✓] | 链表 双指针 | 16 | |
1 | 两数之和 | [✓] | 数组 哈希表 | 16 | |
3 | 无重复字符的最长子串 | [✓] | 哈希表 字符串 滑动窗口 | 15 | |
53 | 最大子数组和 | [✓] | 数组 分治 动态规划 | 15 | |
102 | 二叉树的层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 14 | |
5 | 最长回文子串 | [✓] | 双指针 字符串 动态规划 | 14 | |
20 | 有效的括号 | [✓] | 栈 字符串 | 14 | |
4 | 寻找两个正序数组的中位数 | [✓] | 数组 二分查找 分治 | 13 | |
21 | 合并两个有序链表 | [✓] | 递归 链表 | 13 | |
70 | 爬楼梯 | [✓] | 记忆化搜索 数学 动态规划 | 12 | |
56 | 合并区间 | [✓] | 数组 排序 | 12 | |
72 | 编辑距离 | [✓] | 字符串 动态规划 | 12 | |
94 | 二叉树的中序遍历 | [✓] | 栈 树 深度优先搜索 1+ | 12 | |
200 | 岛屿数量 | [✓] | 深度优先搜索 广度优先搜索 并查集 2+ | 12 | |
25 | K 个一组翻转链表 | [✓] | 递归 链表 | 11 |
阿里
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 59 | |
912 | 排序数组 | 数组 分治 桶排序 5+ | 40 | ||
470 | 用 Rand7() 实现 Rand10() | 数学 拒绝采样 概率与统计 1+ | 32 | ||
3 | 无重复字符的最长子串 | [✓] | 哈希表 字符串 滑动窗口 | 31 | |
236 | 二叉树的最近公共祖先 | [✓] | 树 深度优先搜索 二叉树 | 26 | |
105 | 从前序与中序遍历序列构造二叉树 | [✓] | 树 数组 哈希表 2+ | 26 | |
215 | 数组中的第K个最大元素 | [✓] | 数组 分治 快速选择 2+ | 22 | |
1 | 两数之和 | [✓] | 数组 哈希表 | 21 | |
15 | 三数之和 | [✓] | 数组 双指针 排序 | 20 | |
206 | 反转链表 | [✓] | 递归 链表 | 19 | |
125 | 验证回文串 | [✓] | 双指针 字符串 | 19 | |
19 | 删除链表的倒数第 N 个结点 | [✓] | 链表 双指针 | 18 | |
1114 | 按序打印 | 多线程 | 18 | ||
92 | 反转链表 II | [✓] | 链表 | 18 | |
56 | 合并区间 | [✓] | 数组 排序 | 18 | |
53 | 最大子数组和 | [✓] | 数组 分治 动态规划 | 16 | |
1143 | 最长公共子序列 | [✓] | 字符串 动态规划 | 16 | |
19 | 删除链表的倒数第 N 个结点 | [✓] | 链表 双指针 | 15 | |
232 | 用栈实现队列 | [✓] | 栈 设计 队列 | 14 | |
165 | 比较版本号 | 双指针 字符串 | 14 | ||
25 | K 个一组翻转链表 | [✓] | 递归 链表 | 13 | |
102 | 二叉树的层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 13 | |
165 | 比较版本号 | 双指针 字符串 | 12 | ||
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 11 | |
141 | 环形链表 | [✓] | 哈希表 链表 双指针 | 10 | |
200 | 岛屿数量 | [✓] | 深度优先搜索 广度优先搜索 并查集 2+ | 9 | |
20 | 有效的括号 | [✓] | 栈 字符串 | 9 | |
5 | 最长回文子串 | [✓] | 双指针 字符串 动态规划 | 9 | |
46 | 全排列 | [✓] | 数组 回溯 | 9 | |
103 | 二叉树的锯齿形层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 9 | |
94 | 二叉树的中序遍历 | [✓] | 栈 树 深度优先搜索 1+ | 9 |
字节
美团
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
206 | 反转链表 | [✓] | 递归 链表 | 76 | |
88 | 合并两个有序数组 | [✓] | 数组 双指针 排序 | 61 | |
215 | 数组中的第K个最大元素 | [✓] | 数组 分治 快速选择 2+ | 56 | |
141 | 环形链表 | [✓] | 哈希表 链表 双指针 | 50 | |
92 | 反转链表 II | [✓] | 链表 | 47 | |
21 | 合并两个有序链表 | [✓] | 递归 链表 | 46 | |
102 | 二叉树的层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 44 | |
3 | 无重复字符的最长子串 | [✓] | 哈希表 字符串 滑动窗口 | 41 | |
143 | 重排链表 | [✓] | 栈 递归 链表 1+ | 40 | |
82 | 删除排序链表中的重复元素 II | [✓] | 链表 双指针 | 38 | |
1114 | 按序打印 | 多线程 | 37 | ||
142 | 环形链表 II | [✓] | 哈希表 链表 双指针 | 33 | |
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 33 | |
124 | 二叉树中的最大路径和 | [✓] | 树 深度优先搜索 动态规划 1+ | 28 | |
53 | 最大子数组和 | [✓] | 数组 分治 动态规划 | 28 | |
704 | 二分查找 | [✓] | 数组 二分查找 | 27 | |
15 | 三数之和 | [✓] | 数组 双指针 排序 | 27 | |
20 | 有效的括号 | [✓] | 栈 字符串 | 27 | |
93 | 复原 IP 地址 | [✓] | 字符串 回溯 | 26 | |
1 | 两数之和 | [✓] | 数组 哈希表 | 26 | |
232 | 用栈实现队列 | [✓] | 栈 设计 队列 | 23 | |
54 | 螺旋矩阵 | [✓] | 数组 矩阵 模拟 | 22 | |
46 | 全排列 | [✓] | 数组 回溯 | 21 | |
5 | 最长回文子串 | [✓] | 双指针 字符串 动态规划 | 21 | |
8 | 字符串转换整数 (atoi) | [✓] | 字符串 | 20 | |
718 | 最长重复子数组 | 数组 二分查找 动态规划 3+ | 20 | ||
19 | 删除链表的倒数第 N 个结点 | [✓] | 链表 双指针 | 19 | |
25 | K 个一组翻转链表 | [✓] | 递归 链表 | 18 | |
23 | 合并 K 个升序链表 | [✓] | 链表 分治 堆(优先队列) 1+ | 18 | |
剑指 Offer 22 | 链表中倒数第k个节点 | [✓] | 链表 双指针 | 18 | |
121 | 买卖股票的最佳时机 | [✓] | 数组 动态规划 | 17 | |
236 | 二叉树的最近公共祖先 | [✓] | 树 深度优先搜索 二叉树 | 17 | |
144 | 二叉树的前序遍历 | [✓] | 栈 树 深度优先搜索 1+ | 17 | |
415 | 字符串相加 | [✓] | 数学 字符串 模拟 | 16 | |
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 16 | |
69 | x 的平方根 | [✓] | 数学 二分查找 | 15 | |
94 | 二叉树的中序遍历 | [✓] | 栈 树 深度优先搜索 1+ | 14 | |
1143 | 最长公共子序列 | [✓] | 字符串 动态规划 | 14 | |
239 | 滑动窗口最大值 | [✓] | 队列 数组 滑动窗口 2+ | 14 | |
剑指 Offer 40 | 最小的k个数 | [✓] | 数组 分治 快速选择 2+ | 13 |
快手
题号 | 标题 | 题解 | 标签 | 难度 | 频次 |
---|---|---|---|---|---|
206 | 反转链表 | [✓] | 递归 链表 | 40 | |
146 | LRU 缓存 | [✓] | 设计 哈希表 链表 1+ | 29 | |
92 | 反转链表 II | [✓] | 链表 | 25 | |
3 | 无重复字符的最长子串 | [✓] | 哈希表 字符串 滑动窗口 | 24 | |
21 | 合并两个有序链表 | [✓] | 递归 链表 | 23 | |
102 | 二叉树的层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 23 | |
46 | 全排列 | [✓] | 数组 回溯 | 22 | |
15 | 三数之和 | [✓] | 数组 双指针 排序 | 19 | |
5 | 最长回文子串 | [✓] | 双指针 字符串 动态规划 | 19 | |
88 | 合并两个有序数组 | [✓] | 数组 双指针 排序 | 19 | |
215 | 数组中的第K个最大元素 | [✓] | 数组 分治 快速选择 2+ | 19 | |
23 | 合并 K 个升序链表 | [✓] | 链表 分治 堆(优先队列) 1+ | 16 | |
53 | 最大子数组和 | [✓] | 数组 分治 动态规划 | 16 | |
33 | 搜索旋转排序数组 | [✓] | 数组 二分查找 | 15 | |
141 | 环形链表 | [✓] | 哈希表 链表 双指针 | 14 | |
415 | 字符串相加 | [✓] | 数学 字符串 模拟 | 14 | |
1143 | 最长公共子序列 | [✓] | 字符串 动态规划 | 14 | |
142 | 环形链表 II | [✓] | 哈希表 链表 双指针 | 14 | |
236 | 二叉树的最近公共祖先 | [✓] | 树 深度优先搜索 二叉树 | 13 | |
144 | 二叉树的前序遍历 | [✓] | 栈 树 深度优先搜索 1+ | 13 | |
54 | 螺旋矩阵 | [✓] | 数组 矩阵 模拟 | 12 | |
160 | 相交链表 | [✓] | 哈希表 链表 双指针 | 12 | |
20 | 有效的括号 | [✓] | 栈 字符串 | 12 | |
103 | 二叉树的锯齿形层序遍历 | [✓] | 树 广度优先搜索 二叉树 | 11 | |
300 | 最长递增子序列 | [✓] | 数组 二分查找 动态规划 | 11 |