
面试手撕 LC Hot 100(ACM模式版)
为帮助大家适应面试中 ACM 模式手撕代码 的要求,我们精选 Hot 100 高频面试题,提供标准化训练,助你高效提升编程能力!
- 题库介绍
- 题目目录
ACM 模式 Hot 100 题库介绍
📌写在前面
Q:为什么会有这个题库?
A: 许多同学在平时刷 LeetCode 时,习惯于直接编写核心算法逻辑,而忽略了完整的 输入输出处理。然而,在 面试手撕代码 阶段,面试官往往要求候选人 使用 ACM 竞赛模式(手动处理输入输出),许多同学因不适应而导致发挥失常,最终未能通过面试。因此,我们精心打造了这个 ACM 模式 Hot 100 题库,帮助大家提前适应这一要求,提升手撕代码能力!
📌 题库简介
本题库精心挑选 100 道高频面试题,覆盖 哈希、双指针、滑动窗口、子串、动态规划等核心考点,采用 ACM 竞赛模式(标准输入输出 + 代码解耦),帮助你 快速提升手撕代码能力,适应 企业技术面试 & 笔试要求。
📌 适用人群
✅ 求职备战:想要在 秋招/春招/社招技术面试 中脱颖而出的开发者
入门教程(必刷)
Open
Problem | Difficulty | through_rate |
---|---|---|
数组的读入 | 简单 | 1376/3353 |
链表的读入 | 简单 | 1181/3431 |
二叉树的读入与构建(数组形式) | 简单 | 905/3340 |
普通树的读入与构建 | 中等 | 419/1592 |
图的读入与构建 | 中等 | 396/1007 |
哈希
Open
双指针
Open
滑动窗口
Open
Problem | Difficulty | through_rate |
---|---|---|
无重复字符的最长字串 | 简单 | 776/3801 |
找到字符串中所有字母异位词 | 中等 | 658/2447 |
子串
Open
普通数组
Open
Problem | Difficulty | through_rate |
---|---|---|
最大子数组和 | 中等 | 624/1529 |
合并区间 | 中等 | 579/1811 |
轮转数组 | 中等 | 542/1220 |
除自身以外数组的乘积 | 中等 | 525/1094 |
缺失的第一个正数 | 中等 | 472/1868 |
矩阵
Open
链表
Open
二叉树
Open
Problem | Difficulty | through_rate |
---|---|---|
二叉树的中序遍历 | 简单 | 460/1974 |
二叉树的最大深度 | 简单 | 398/1166 |
翻转二叉树 | 简单 | 340/924 |
对称二叉树 | 简单 | 309/821 |
二叉树的直径 | 中等 | 289/949 |
二叉树的层次遍历 | 中等 | 329/1108 |
将有序数组转换为二叉搜索树 | 简单 | 234/761 |
验证二叉搜索树 | 简单 | 248/704 |
二叉搜索树中第K小的元素 | 中等 | 232/674 |
二叉树的右视图 | 中等 | 229/496 |
二叉树展开为链表 | 中等 | 200/537 |
从前序与中序遍历序列构造二叉树 | 中等 | 206/537 |
路径总和Ⅲ | 中等 | 193/535 |
二叉树的最近公共祖先 | 中等 | 230/634 |
二叉树中的最大路径和 | 中等 | 193/605 |
图论
Open
Problem | Difficulty | through_rate |
---|---|---|
岛屿数量 | 简单 | 411/1605 |
腐烂的橘子 | 中等 | 328/1196 |
课程表 | 中等 | 292/767 |
实现Trie(前缀树) | 中等 | 185/505 |
回溯
Open
二分查找
Open
Problem | Difficulty | through_rate |
---|---|---|
搜索插入位置 | 简单 | 375/1091 |
搜索二维矩阵 | 中等 | 321/803 |
在排序数组中查找元素的第一个和最后一个位置 | 中等 | 308/927 |
搜索旋转排序数组 | 中等 | 291/702 |
寻找旋转排序数组中的最小值 | 中等 | 254/684 |
寻找两个正序数组的中位数 | 中等 | 174/580 |
栈
Open
堆
Open
Problem | Difficulty | through_rate |
---|---|---|
数组中的第K个最大元素 | 中等 | 329/1075 |
前K个高频元素 | 中等 | 255/667 |
数据流的中位数 | 中等 | 159/457 |