面试手撕 LC Hot 100(ACM模式版)
为帮助大家适应面试中 ACM 模式手撕代码 的要求,我们精选 Hot 100 高频面试题,提供标准化训练,助你高效提升编程能力!
- 题库介绍
- 题目目录
ACM 模式 Hot 100 题库介绍
📌写在前面
Q:为什么会有这个题库?
A: 许多同学在平时刷 LeetCode 时,习惯于直接编写核心算法逻辑,而忽略了完整的 输入输出处理。然而,在 面试手撕代码 阶段,面试官往往要求候选人 使用 ACM 竞赛模式(手动处理输入输出),许多同学因不适应而导致发挥失常,最终未能通过面试。因此,我们精心打造了这个 ACM 模式 Hot 100 题库,帮助大家提前适应这一要求,提升手撕代码能力!
📌 题库简介
本题库精心挑选 100 道高频面试题,覆盖 哈希、双指针、滑动窗口、子串、动态规划等核心考点,采用 ACM 竞赛模式(标准输入输出 + 代码解耦),帮助你 快速提升手撕代码能力,适应 企业技术面试 & 笔试要求。
📌 适用人群
✅ 求职备战:想要在 秋招/春招/社招技术面试 中脱颖而出的开发者
入门教程(必刷)
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 数组的读入 | 简单 | 1837/4406 |
| 链表的读入 | 简单 | 1591/4637 |
| 二叉树的读入与构建(数组形式) | 简单 | 1242/4702 |
| 普通树的读入与构建 | 中等 | 610/2339 |
| 图的读入与构建 | 中等 | 574/1462 |
哈希
Open
双指针
Open
滑动窗口
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 无重复字符的最长字串 | 简单 | 1145/5646 |
| 找到字符串中所有字母异位词 | 中等 | 962/3573 |
子串
Open
普通数组
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 最大子数组和 | 中等 | 923/2328 |
| 合并区间 | 中等 | 855/2802 |
| 轮转数组 | 中等 | 800/1922 |
| 除自身以外数组的乘积 | 中等 | 780/1721 |
| 缺失的第一个正数 | 中等 | 701/2781 |
矩阵
Open
链表
Open
二叉树
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 二叉树的中序遍历 | 简单 | 683/2815 |
| 二叉树的最大深度 | 简单 | 585/1743 |
| 翻转二叉树 | 简单 | 515/1442 |
| 对称二叉树 | 简单 | 472/1229 |
| 二叉树的直径 | 中等 | 445/1461 |
| 二叉树的层次遍历 | 中等 | 498/1628 |
| 将有序数组转换为二叉搜索树 | 简单 | 365/1201 |
| 验证二叉搜索树 | 简单 | 387/1117 |
| 二叉搜索树中第K小的元素 | 中等 | 363/1047 |
| 二叉树的右视图 | 中等 | 359/805 |
| 二叉树展开为链表 | 中等 | 333/912 |
| 从前序与中序遍历序列构造二叉树 | 中等 | 331/857 |
| 路径总和Ⅲ | 中等 | 325/916 |
| 二叉树的最近公共祖先 | 中等 | 363/1084 |
| 二叉树中的最大路径和 | 中等 | 309/964 |
图论
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 岛屿数量 | 简单 | 633/2471 |
| 腐烂的橘子 | 中等 | 501/1787 |
| 课程表 | 中等 | 436/1185 |
| 实现Trie(前缀树) | 中等 | 290/739 |
回溯
Open
二分查找
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 搜索插入位置 | 简单 | 549/1637 |
| 搜索二维矩阵 | 中等 | 480/1174 |
| 在排序数组中查找元素的第一个和最后一个位置 | 中等 | 462/1398 |
| 搜索旋转排序数组 | 中等 | 429/1114 |
| 寻找旋转排序数组中的最小值 | 中等 | 386/1122 |
| 寻找两个正序数组的中位数 | 中等 | 277/1002 |
栈
Open
堆
Open
| Problem | Difficulty | through_rate |
|---|---|---|
| 数组中的第K个最大元素 | 中等 | 496/1663 |
| 前K个高频元素 | 中等 | 406/1065 |
| 数据流的中位数 | 中等 | 270/861 |