算法面试 · Java 复习路线
面试算法复习课程
面向国内大厂 Java 后端面试的完整复习路线:从四步法与摸底开始,依次过双指针、哈希表、树、DP、图论等 15 个专题,每课配可默写模板、随堂测验与 LeetCode 配套题。第一次来,先读参考卡《面试算法知识地图》——它是整条路线的总纲。
新开一课前看《面试算法知识地图》:每个专题的面试权重、必会代表题和课程进度都在里面;考前也回看它。
01课程正文 · 15 课
面试四步法 + 25 分钟摸底
你不缺算法知识,缺的是把知识稳定换成面试得分的流程。这一课给你那个流程(四步法),再用 12 道题摸清你的现状,后续课程按此定制。
双指针与滑动窗口
双指针不是一个算法,是四种套路。这课给你「信号词 → 武器」识别表、三套可默写模板,以及滑动窗口为什么是 O(n) 的标准答法——把「有序找对」和「连续子串」两大高频题族变成条件反射。
哈希表
哈希表是四步法里出场率最高的武器,但面试考的不是「会用」,而是「用对」:三类用法、键的设计、前缀和桥接,外加 Java API 的坑位地图——这一课全部配齐。
链表
链表题考的不是想法,是指针操作的严谨:dummy 哨兵、三引用反转、快慢指针三连、两个「一次遍历」技巧。五套模板全部肌肉记忆,这也是后面手撕 LRU 的前置地基。
栈与单调栈
栈是「最近的未匹配元素」的内存,单调栈是它的进阶形态:一套模板吃掉「下一个更大」全题族。这课给你 ArrayDeque 正确姿势、四道经典题模板,和单调栈的方向口诀。
二叉树与递归
树题不是一道道背的,是一道道「答三问」的。这课给你递归三问方法论与四种遍历的全部武器,树题从此变成填空题。
堆与 TopK
面试里绝大多数堆题只考一件事:TopK。这课把「求前 K 大用小顶堆」变成你的条件反射,顺带拿下合并 K 链表与双堆中位数。
二分查找
二分挂人从来不是逻辑难,是边界乱。这课用一个统一模板终结两套边界体系,再把旋转数组、峰值与二分答案一并收编。
回溯
回溯(backtracking)是有计划的暴力。一个框架加三个变体(子集、排列、组合),覆盖了绝大多数回溯题——这课把它们钉死。
贪心
贪心题的难点从来不在代码,而在「凭什么敢贪」。这一课给你判断标准(交换论证)、四组高频套路(区间、跳跃、股票、子数组),以及把策略说进面试官心里的话术。
动态规划
本课程最大专题。给你一套把任何 DP 题从零推出来的四步法,再过一遍四大高频场景:线性、网格、背包、双串。学完的标准不是「背下转移方程」,而是「给我新题也能按流程推」。
图论
面试里的图论题形态很固定:网格、依赖、连通。武器就三件——BFS、拓扑排序、并查集。这一课把三件武器的模板和各自「一写就错」的细节(标记时机、判环、压缩)一次讲清。
手撕数据结构综合
国内大厂的特色考法:白板手写一个完整的数据结构。这一课把出现率最高的四件套——LRU、最小栈、快排、堆排——练到默写级,并配好面试话术与追问预案。
位运算与数学
四件小武器——异或、n & (n - 1)、快速幂、摩尔投票——都是「复杂度直接降一档」的存在,加上 Java 移位运算的三条军规,一次收齐。
前缀树与区间/前缀技巧
课程的收官一课:前缀树(Trie)手写实现、合并区间、前缀和与差分——三组「一次预处理、多次 O(1) 查询」的技巧,都是面试里的送分题,别送出去。