课程简介
算法面试准备的资料很多,但真正能拿来对着写代码、跑测试、反复回看的并不多。覃超这套 40 讲的结构比较务实:它不是把算法知识点从头讲一遍,而是按面试现场的真实节奏来组织,先讲复杂度分析怎么答,再逐类拆解数组、链表、栈、队列、树、堆、递归、动态规划这些高频考点。对已经能写业务代码、但缺少系统性算法训练的开发者来说,这种组织方式更接近工程里“对照接口文档写实现…
算法面试准备的资料很多,但真正能拿来对着写代码、跑测试、反复回看的并不多。覃超这套 40 讲的结构比较务实:它不是把算法知识点从头讲一遍,而是按面试现场的真实节奏来组织,先讲复杂度分析怎么答,再逐类拆解数组、链表、栈、队列、树、堆、递归、动态规划这些高频考点。对已经能写业务代码、但缺少系统性算法训练的开发者来说,这种组织方式更接近工程里“对照接口文档写实现”的体验。
课件与视频是两条互补的线
这套资料里,视频承担的是思路演示和口述推导,课件承担的是可检索、可标注的参考。两者配合使用效率最高:视频里讲到某道题的解法时,随手在课件对应位置标记边界条件和复杂度结论,回头复习时就不需要重新拖动进度条。LeetCode 相关的那一讲专门讲怎么用刷题平台,不是泛泛地说“多刷题”,而是落到题型分类、提交节奏和复盘方式上,这部分对自学的人尤其有用。
看的时候建议保持一个习惯:每看完一个理论讲解,立刻在本地写一遍最小可运行版本,哪怕只是数组反转、链表判环这种小题。算法能力不是看会的,是写出来的。课件里的结构可以直接当模板,改一改变量名和边界处理,就能迁移到同类题目上。
从复杂度分析切进面试状态
复杂度分析单独占一讲,而且放在前面,这个顺序是对的。面试里很多候选人题能做出来,却在“先说思路和时间空间复杂度”这一步卡住,导致沟通节奏乱掉。这一讲把常见题型对应的复杂度判断方式拆开讲,包括循环嵌套怎么数、递归怎么用主定理或递归树估计、空间复杂度里递归栈怎么算。掌握之后,面对一道陌生题,至少能先给出一个可讨论的基线解法,再谈优化。
这部分内容也适合拿来当日常 code review 的补充视角。业务代码里不常算复杂度,但一旦涉及批量数据处理、嵌套查询或递归遍历,同一套分析框架直接能用。
数据结构专题按“理论 + 真题”成对出现
数组与链表、栈与队列、树与堆这些专题,基本都遵循先讲结构特性和适用场景、再给面试题的顺序。链表判环那类题就是典型:理论部分讲清快慢指针的移动规则,题目部分再落到具体实现和边界处理。这种成对结构的好处是,你能清楚看到“为什么这个结构适合这类问题”,而不是记住一个孤立技巧。
- 数组与链表:重点在随机访问与插入删除的取舍、双指针和快慢指针的适用条件。
- 栈与队列:单调栈、滑动窗口最值这类问题,本质是结构选择而不是公式记忆。
- 树与堆:遍历方式、递归与迭代互转、优先队列在 Top K 问题里的位置。
- 递归与动态规划:从暴力递归到记忆化再到递推,这条演进路径比直接背状态转移方程更有迁移价值。
把它当成可检索的对照手册
这套资料不适合一口气刷完。更合理的用法是:按题型分块,每次集中处理一类,先看理论讲解建立判断依据,再挑对应面试题动手实现,最后回到课件核对边界条件和复杂度结论。遇到卡住的题,先自己写测试用例复现问题,再回看对应视频片段,比直接看答案的留存率高得多。
对于正在准备面试的开发者,这份资料的价值在于它提供了从“知道有这个算法”到“能在白板上写出来并解释清楚”之间的中间步骤。自学路径可以这样安排:先用复杂度分析那一讲校准表达方式,再按数据结构专题逐个推进,每推进一个专题就配一组 LeetCode 同类题做验证。整个过程以自己写出的代码为准,视频和课件只作为对照参考。
极客时间付费-覃超-算法面试通关40讲
系统学习算法,轻松应对面试
编辑点评
覃超老师深入浅出,从基础到进阶,全面覆盖算法面试要点,适合求职者和算法爱好者。
⭐ 编辑推荐
覃超老师带你系统学习算法,从基础数据结构到高级算法设计,助你轻松应对面试。
✨ 课程亮点
✦系统学习算法
✦深入浅出讲解
✦全面覆盖面试要点
课程目录
课程目录51 集
- 21-20 面试题:二叉树&二叉搜索树的最近公共祖先.mp4 [81.1 MB]
- 15-14 理论讲解:哈希表.mp4 [32.9 MB]
- 覃超-算法面试通关40讲课件【公重号:CunWorkNotes】.zip [38.6 MB]
- 38-37 理论讲解:字典树.mp4 [28.0 MB]
- 34-33 面试题:N皇后问题【公重号:CunWorkNotes】.mp4 [95.8 MB]
- 20-19 面试题:验证二叉搜索树.mp4 [60.9 MB]
- 39-38 面试题:实现一个字典树.mp4 [26.2 MB]
- 16-15 面试题:有效的字母异位词.mp4 [43.6 MB]
- 50-49 面试题:股票买卖系列(上)【公重号:CunWorkNotes】.mp4 [288.6 MB]
- 49-48 面试题:乘积最大子序列【公重号:CunWorkNotes】.mp4 [150.7 MB]
- 35-34 面试题:数独问题【公重号:CunWorkNotes】.mp4 [133.4 MB]
- 25-24 面试题:求众数【公重号:CunWorkNotes】.mp4 [98.2 MB]
- 10-09 面试题:判断括号字符串是否有效【公重号:CunWorkNotes】.mp4 [52.5 MB]
- 5-04锝滃浣曠敤濂絃eetCode.mp4 [47.5 MB]
- 44-43 面试题:N皇后问题的另一种解法.mp4 [201.5 MB]
- 17-16 面试题:两数之和【公重号:CunWorkNotes】.mp4 [39.6 MB]
- 43-42 面试题:2的幂次方问题&比特位计数问题【公重号:CunWorkNotes】.mp4 [60.9 MB]
- 30-29 面试题:二叉树层次遍历.mp4 [63.1 MB]
- 11-10 面试题:用队列实现栈&用栈实现队列.mp4 [44.6 MB]
- 9-08 理论讲解:堆栈&队列.mp4 [12.5 MB]
- 26-25 理论讲解:贪心算法.mp4 [17.1 MB]
- 1-宣导片|带你了解算法.mp4 [31.9 MB]
- 45-44 理论理解:动态规划(上).mp4 [26.9 MB]
- 23-22 理论讲解:递归&分治.mp4 [32.9 MB]
- 37-36 面试题:实现一个求解平方根的函数.mp4 [124.7 MB]
- 41-40 理论讲解:位运算.mp4 [22.3 MB]
- 27-26 面试题:买卖股票的最佳时机.mp4 [89.7 MB]
- 18-17 面试题:三数之和.mp4 [86.2 MB]
- 48-47 面试题:三角形的最小路径和.mp4 [149.2 MB]
- 29-28 理论讲解:深度优先搜索.mp4 [24.7 MB]
- 14-13 面试题:返回滑动窗口中的最大值.mp4 [97.3 MB]
- 6-05 理论讲解:数组&链表.mp4 [21.4 MB]
- 24-23 面试题:Pow(x,n).mp4 [50.7 MB]
- 8-07 面试题:判断链表是否有环.mp4 [55.2 MB]
- 22-21 理论讲解:二叉树遍历.mp4 [11.9 MB]
- 40-39 面试题:二维网格中的单词搜索问题.mp4 [57.8 MB]
- 4-03 如何应对算法面试复杂度分析题型.mp4 [43.7 MB]
- 36-35 理论讲解:二分查找.mp4 [17.8 MB]
- 46-45 理论理解:动态规划(下).mp4 [54.4 MB]
- 13-12 面试题:返回数据流中的第K大元素.mp4 [69.5 MB]
- 28-27 理论讲解:广度优先搜索.mp4 [19.9 MB]
- 33-32 理论讲解:剪枝.mp4 [62.8 MB]
- 2-01 算法:程序员必备基本功.mp4 [80.4 MB]
- 12-11 理论讲解:优先队列.mp4 [26.2 MB]
- 31-30 面试题:二叉树的最大和最小深度.mp4 [47.1 MB]
- 7-06 面试题:反转一个单链表.mp4 [18.7 MB]
- 42-41 面试题:统计位1的个数.mp4 [52.4 MB]
- 19-18 理论讲解:树&二叉树&二叉搜索树.mp4 [37.9 MB]
- 32-31 面试题:生成有效括号组合.mp4 [71.1 MB]
- 3-02 如何高效学习数据结构与算法.mp4 [81.6 MB]
- 47-46 面试题:爬楼梯.mp4 [84.1 MB]