先说结论:这门课适合谁,不适合谁

如果你正准备互联网公司的技术面试,刷 LeetCode 时能写出暴力解法但总在时间复杂度上卡壳,或者面对一道题知道大概方向却写不完整,这门课值得花时间。它的定位很明确:把 LeetCode 高频题按数据结构与算法类型归类,逐类讲透,而不是按题号顺序一道道刷。

但如果你连一门编程语言的基础语法都还不熟,或者完全没接触过数组、链表,这门课会让你跟得很吃力。它假定你已经能独立写出一段可运行的代码,讲的是「怎么把题做对、做快」,不是「怎么开始学编程」。

它解决的是刷题中的哪个具体问题

多数人刷题低效,不是因为题做得少,而是因为同类题反复错。今天做了一道括号匹配,明天遇到单调栈又懵了,知识是散的。这门课把题目按主题收拢——栈与队列、优先队列、递归与分治、查找与排序等——让你在同一个结构下连续看几道题,形成可迁移的解题直觉。

另一个被解决的是「思路到代码」的断裂。课程里对每道题的讲解不是只给一个结论,而是把状态定义、边界处理、复杂度权衡讲出来。你在面试里真正需要的,是能在白板上一边写一边解释为什么这么写,这门课的训练方式更贴近这个场景。

学完能独立做到什么

  • 拿到一道中等难度的题,能先判断它属于哪类问题,再决定用哪种数据结构或算法框架,而不是上来就硬写。
  • 能自己分析一段解法的时间与空间复杂度,并说清瓶颈在哪、还能不能优化。
  • 对栈、队列、优先队列这些「看起来简单但面试常考」的结构,能熟练处理 Top K、模拟递归、滑动窗口最值等典型变形。
  • 能独立完成一道题的完整作答流程:澄清题意、给出思路、写代码、自测边界。

需要提醒的是,这门课不会替你刷题。它给的是分类框架和讲解示范,真正的熟练度仍然来自你自己动手写。看完一章就合上视频重写一遍,效果远比连刷十集要好。

资料怎么用效率最高

配套的源码课件建议这样安排:先自己按题目想一遍,写下能跑通的版本,再对照讲解和源码看差异。重点看的不是「标准答案长什么样」,而是「我的思路在哪一步偏了」。如果某道题你一遍就过,直接跳过对应的视频,不必从头看到尾。

按章节推进时,把同一章里的题集中做,做完再回头看讲解,比边看边做更容易形成模式识别。优先队列那一章里的 Top K 类问题就是典型例子——集中做几道,你会自然总结出「什么时候该用堆、什么时候排序就够」的判断标准。

一点务实的提醒

算法面试的通过与否,课程只占一部分,另一部分是你对自己简历项目的熟悉程度、沟通表达和临场状态。这门课能帮你把算法这一块从「碰运气」变成「有准备」,但不要指望看完就稳过。把它当作一份分类清晰的讲解参考,配合自己的刷题节奏使用,是更合理的心态。

课程目录

📁 第11章 课程结语 第11章 课程结语文档.png [493.5 KB] 11-1 结语.mp4
 [6.1 MB] !重命名免费分享.bat [967.0 B] 📁 第6章 栈,队列,优先队列 第6章 栈,队列,优先队列必看.zip
 [1.8 MB] 6-7 优先队列相关的算法问题 Top K Freqvuent Elements.mp4
 [67.0 MB] 6-3 运用栈模拟递归.mp4
 [86.8 MB] 6-6 优先队列.mp4
 [70.6 MB] 6-5 BFS和图的最短路径 Perfect Squares.mp4
 [119.5 MB] 6-4 队列的典型应用 Binary Tree Leel Order Traersal.mp4
 [54.7 MB] 6-1 栈的基础应用 alid Parentheses.mp4
 [84.7 MB] 6-2 栈和递归的紧密关系 Binary Tree Preorder, Inorder and Postorder Traersal.mp4
 [77.7 MB] 📁 第4章 查找表相关问题 第4章 查找表相关问题必看.png [493.5 KB] 4-2 map的使用 Intersection of Two Arrays II.mp4
 [57.2 MB] 4-3 set和map不同底层实现的区别.mp4
 [91.0 MB] 4-7 查找表和滑动窗口 Contain Duplicate II.mp4
 [60.0 MB] 4-1 set的使用 Intersection of Two Arrays.mp4
 [68.9 MB] 4-5 灵活选择键值 4Sum II.mp4
 [63.9 MB] 4-4 使用查找表的经典问题 Two Sum.mp4
 [81.8 MB] 4-8 二分搜索树底层实现的顺序性 Contain Duplicate III.mp4
 [55.3 MB] 4-6 灵活选择键值 Number of Boomerangs.mp4
 [64.1 MB] 📁 第3章 数组中的问题其实最常见 第3章 数组中的问题其实最常见资料.png [493.5 KB] 3-1 从二分查找法看如何写出正确的程序.mp4
 [93.6 MB] 3-4 即使简单的问题,也有很多优化的思路.mp4
 [68.2 MB] 3-5 三路快排partition思路的应用 Sort Color.mp4
 [96.0 MB] 3-2 改变变量定义,依然可以写出正确的算法.mp4
 [44.9 MB] 3-7 滑动窗口 Minimum Size Subarray Sum.mp4
 [65.7 MB] 3-6 对撞指针 Two Sum II - Input Array is Sorted.mp4
 [86.0 MB] 3-8 在滑动窗口中做记录 Longest Substring Without Repeating Characters.mp4
 [67.2 MB] 3-3 在LeetCode上解决第一个问题 Moe Zeros.mp4
 [58.7 MB] 📁 第9章 动态规划基础 第9章 动态规划基础资料.zip
 [1.8 MB] 9-1 什么是动态规划.mp4
 [89.7 MB] 9-2 第一个动态规划问题 Climbing Stairs.mp4
 [61.3 MB] 9-3 发现重叠子问题 Integer Break.mp4
 [119.8 MB] 9-6 0-1背包问题的优化和变种.mp4
 [85.0 MB] 9-8 LIS问题 Longest Increasing Subseqvuence.mp4
 [111.0 MB] 9-4 状态的定义和状态转移 House Robber.mp4
 [116.0 MB] 9-9 LCS,最短路,求动态规划的具体解以及更多.mp4
 [89.0 MB] 9-7 面试中的0-1背包问题 Partition Equal Subset Sum.mp4
 [119.3 MB] 9-5 0-1背包问题.mp4
 [162.9 MB] 📁 第8章 递归和回溯法 第8章 递归和回溯法资料.zip
 [1.8 MB] 8-6 二维平面上的回溯法 Word Search.mp4
 [114.9 MB] 8-3 排列问题 Permutations.mp4
 [104.8 MB] 8-1 树形问题 Letter Combinations of a Phone Number.mp4
 [90.1 MB] 8-7 floodfill算法,一类经典问题 Number of Islands-.mp4
 [105.0 MB] 8-4 组合问题 Combinations.mp4
 [83.5 MB] 8-5 回溯法解决组合问题的优化.mp4
 [76.5 MB] 8-2 什么是回溯.mp4
 [71.2 MB] 8-8 回溯法是经典人工智能的基础 N Qvueens.mp4
 [112.0 MB] 📁 第5章 在链表中穿针引线 第5章 在链表中穿针引线必看.zip
 [1.8 MB] 5-6 链表与双指针 Remoe Nth Node Form End of List.mp4
 [80.6 MB] 5-4 复杂的穿针引线 Swap Nodes in Pairs.mp4
 [58.0 MB] 5-1 链表,在节点间穿针引线 Reerse Linked List.mp4
 [75.0 MB] 5-3 设立链表的虚拟头结点 Remoe Linked List Elements.mp4
 [82.6 MB] 5-2 测试你的链表程序.mp4
 [67.8 MB] 5-5 不仅仅是穿针引线 Delete Node in a Linked List.mp4
 [41.1 MB] 📁 第7章 二叉树和递归 7-4 定义递归问题 Binary Tree Path.mp4
 [71.1 MB] 7-6 二分搜索树中的问题 Lowest Common Ancestor of a Binary Search Tree.mp4
 [77.6 MB] 7-1 二叉树天然的递归结构.mp4
 [82.9 MB] 7-3 注意递归的终止条件 Path Sum.mp4
 [58.9 MB] 7-2 一个简单的二叉树问题引发的血案 Inert Binary Tree.mp4
 [45.3 MB] 7-5 稍复杂的递归逻辑 Path Sum III.mp4
 [72.5 MB] 📁 第10章 贪心算法 10-3 贪心选择性质的证明.mp4
 [65.1 MB] 10-2 贪心算法与动态规划的关系 Non-oerlapping Interals.mp4
 [94.0 MB] 10-1 贪心基础 Assign Cookies.mp4
 [55.6 MB] 📁 第1章 算法面试到底是什么鬼 1-3 如何准备算法面试.mp4
 [66.5 MB] 1-2 算法面试只是面试的一部分.mp4
 [65.6 MB] 1-1 算法面试不仅仅是正确的回答问题.mp4
 [87.4 MB] 1-4 如何回答算法面试问题.mp4
 [57.5 MB] 📁 第2章 面试中的复杂度分析 2-3 简单的复杂度分析.mp4
 [76.9 MB] 2-7 避免复杂度的震荡.mp4
 [47.8 MB] 2-6 均摊时间复杂度分析(Amortized Time Analysis).mp4
 [73.8 MB] 2-2 对数据规模有一个概念.mp4
 [47.4 MB] 2-5 递归算法的复杂度分析.mp4
 [64.9 MB] 2-4 亲自试验自己算法的时间复杂度.mp4
 [79.7 MB] 2-1 究竟什么是大O(Big O).mp4
 [92.7 MB] coding-82.zip
 [23.3 MB] 适合人群 算法爱好者 面试求职者 编程初学者 学习收获 掌握Leetcode解题技巧 提升算法面试能力 增强编程思维 祝您学习愉快! 学有所成,前程似锦!