课程简介
这套 LeetCode 真题讲解资料的组织方式不是按题号顺序平铺,而是按算法类型分章推进。对已经刷过一些题、但解题思路还停留在「见过就会、换一道就卡」的开发者来说,这种结构更适合拿来对照复盘:先判断题目属于哪一类问题,再选对应的数据结构或算法套路,而不是每道题都从零推。 课程的组织逻辑:按算法类型切分 从可见的章节安排看,讲解以数组类问题作为起点,并且把几…
这套 LeetCode 真题讲解资料的组织方式不是按题号顺序平铺,而是按算法类型分章推进。对已经刷过一些题、但解题思路还停留在「见过就会、换一道就卡」的开发者来说,这种结构更适合拿来对照复盘:先判断题目属于哪一类问题,再选对应的数据结构或算法套路,而不是每道题都从零推。
课程的组织逻辑:按算法类型切分
从可见的章节安排看,讲解以数组类问题作为起点,并且把几个在面试中高频出现的解法模式单独拎出来做专题。比如滑动窗口这一类,会结合「无重复字符的最长子串」这类需要动态维护窗口区间和字符记录的题目来讲,重点不在最终答案,而在窗口边界如何移动、记录结构用什么、什么时候收缩左指针。
另一类是对双指针与 partition 思想的延伸。「移动零」这类题表面上是原地操作,实际考的是如何在不引入额外数组的前提下完成元素归位;而「颜色分类」则是三路快排 partition 思路的直接应用,把数组按小于、等于、大于某个基准值分成三段。这两类题放在一起看,能体会到「原地重排」这一族问题的共性。
可复用的解题模块
这套资料的价值主要在于把零散题目抽象成可迁移的模块,而不是逐题给出代码。刷完之后至少能沉淀出几类判断依据:
- 看到连续子区间、最长/最短满足条件的子串,优先考虑滑动窗口,并明确窗口内需要维护的统计量。
- 看到原地修改数组且要求保持相对顺序或分区,考虑双指针或快排 partition 的变体。
- 数组类问题里,索引与值的映射关系、边界处理(空数组、单元素、全相同元素)往往是出错的集中点,需要在编码前先想清楚循环不变式。
这些模块一旦形成,遇到新题时可以先归类再动手,减少凭记忆硬套的情况。
资料形态与使用方式
资料以视频讲解为主,配合逐题演示。比较务实的用法是:先自己写一版能通过的解法,再对照讲解看思路差异——是时间复杂度更优,还是边界处理更简洁,还是用了自己没想到的数据结构。单纯看视频的收益有限,因为算法的难点在于「想到」而不是「看懂」,看讲解只能解决后者。
建议把每一类问题整理成自己的模板笔记:触发条件、核心步骤、常见坑。例如滑动窗口就记下窗口定义、扩展与收缩的时机、用什么结构记录窗口内状态。下次遇到同类题先翻笔记再动手,逐步把模板内化成直觉。
适合谁、不适合谁
这套资料更适合已经掌握基本语法、能独立完成简单题,但对中等难度题目缺乏系统方法的开发者。如果你连哈希表、递归、基础排序都还不熟,直接看分类讲解会有点跳。反之,如果已经刷了几百题、只差系统梳理,这套按类型切分的内容正好可以用来查漏补缺,把零散经验整理成体系。
另外要提醒的是,算法能力靠练习量堆出来,讲解只能提供思路参照。把题目分类、把思路写成模板、隔一段时间重做,这三步比反复看视频更接近实际提升。
Leetcode 真题分门别类讲解
LeetCode 真题分类解析,算法面试必备
编辑点评
系统讲解 LeetCode 真题,涵盖多种算法类型,适合求职者提升面试技能。
⭐ 编辑推荐
深度解析 LeetCode 真题,掌握算法解题思路,提升面试竞争力。
课程涵盖数组、递归、动态规划等多种算法类型,通过实际案例讲解,帮助学员快速掌握算法技巧。
✨ 课程亮点
✦LeetCode 真题分类讲解
✦多种算法类型覆盖
✦面试技巧提升
课程目录
第3章 数组中的问题其实最常见8 集
- 3-8 在滑动窗口中做记录 Longest Substring Without Repeating Characters.mp4 [67.2 MB]
- 3-3 在LeetCode上解决第一个问题 Moe Zeros.mp4 [58.7 MB]
- 3-5 三路快排partition思路的应用 Sort Color.mp4 [96.0 MB]
- 3-7 婊戝姩绐楀彛 Minimum Size Subarray Sum.mp4 [65.7 MB]
- 3-4 即使简单的问题,也有很多优化的思路.mp4 [68.2 MB]
- 3-1 从二分查找法看如何写出正确的程序.mp4 [93.6 MB]
- 3-6 瀵规挒鎸囬拡 Two Sum II - Input Array is Sorted.mp4 [86.0 MB]
- 3-2 改变变量定义,依然可以写出正确的算法.mp4 [44.9 MB]
第8章 递归和回溯法5 集
- 8-2 浠€涔堟槸鍥炴函.mp4 [71.2 MB]
- 8-8 回溯法是经典人工智能的基础 N Qvueens.mp4 [112.0 MB]
- 8-7 floodfill算法,一类经典问题 Number of Islands-.mp4 [105.0 MB]
- 8-5 回溯法解决组合问题的优化.mp4 [76.5 MB]
- 8-6 二维平面上的回溯法 Word Search.mp4 [114.9 MB]
第1章 算法面试到底是什么鬼4 集
- 1-1 算法面试不仅仅是正确的回答问题.mp4 [87.4 MB]
- 1-4 如何回答算法面试问题.mp4 [57.5 MB]
- 1-2 算法面试只是面试的一部分.mp4 [65.6 MB]
- 1-3 如何准备算法面试.mp4 [66.5 MB]
第2章 面试中的复杂度分析7 集
- 2-7 避免复杂度的震荡.mp4 [47.8 MB]
- 2-3 简单的复杂度分析.mp4 [76.9 MB]
- 2-5 递归算法的复杂度分析.mp4 [64.9 MB]
- 2-6 均摊时间复杂度分析(Amortized Time Analysis).mp4 [73.8 MB]
- 2-4 亲自试验自己算法的时间复杂度.mp4 [79.7 MB]
- 2-2 对数据规模有一个概念.mp4 [47.4 MB]
- 2-1 究竟什么是大O(Big O).mp4 [92.7 MB]
第11章 课程结语1 集
第10章 贪心算法3 集
- 10-2 贪心算法与动态规划的关系 Non-oerlapping Interals.mp4 [94.0 MB]
- 10-1 贪心基础 Assign Cookies.mp4 [55.6 MB]
- 10-3 贪心选择性质的证明.mp4 [65.1 MB]
第6章 栈,队列,优先队列7 集
- 6-5 BFS和图的最短路径 Perfect Squares.mp4 [119.5 MB]
- 6-6 浼樺厛闃熷垪.mp4 [70.6 MB]
- 6-7 优先队列相关的算法问题 Top K Freqvuent Elements.mp4 [67.0 MB]
- 6-2 栈和递归的紧密关系 Binary Tree Preorder, Inorder and Postorder Traersal.mp4 [77.7 MB]
- 6-4 队列的典型应用 Binary Tree Leel Order Traersal.mp4 [54.7 MB]
- 6-1 栈的基础应用 alid Parentheses.mp4 [84.7 MB]
- 6-3 运用栈模拟递归.mp4 [86.8 MB]
第7章 二叉树和递归6 集
- 7-6 二分搜索树中的问题 Lowest Common Ancestor of a Binary Search Tree.mp4 [77.6 MB]
- 7-3 注意递归的终止条件 Path Sum.mp4 [58.9 MB]
- 7-5 稍复杂的递归逻辑 Path Sum III.mp4 [72.5 MB]
- 7-1 二叉树天然的递归结构.mp4 [82.9 MB]
- 7-4 定义递归问题 Binary Tree Path.mp4 [71.1 MB]
- 7-2 一个简单的二叉树问题引发的血案 Inert Binary Tree.mp4 [45.3 MB]
第5章 在链表中穿针引线6 集
- 5-2 测试你的链表程序.mp4 [67.8 MB]
- 5-4 复杂的穿针引线 Swap Nodes in Pairs.mp4 [58.0 MB]
- 5-3 设立链表的虚拟头结点 Remoe Linked List Elements.mp4 [82.6 MB]
- 5-1 链表,在节点间穿针引线 Reerse Linked List.mp4 [75.0 MB]
- 5-6 链表与双指针 Remoe Nth Node Form End of List.mp4 [80.6 MB]
- 5-5 不仅仅是穿针引线 Delete Node in a Linked List.mp4 [41.1 MB]
第9章 动态规划基础7 集
- 9-3 发现重叠子问题 Integer Break.mp4 [119.8 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-6 0-1背包问题的优化和变种.mp4 [85.0 MB]
- 9-2 第一个动态规划问题 Climbing Stairs.mp4 [61.3 MB]
- 9-1 什么是动态规划.mp4 [89.7 MB]
第4章 查找表相关问题9 集
- 4-1 set的使用 Intersection of Two Arrays.mp4 [68.9 MB]
- 4-6 灵活选择键值 Number of Boomerangs.mp4 [64.1 MB]
- 4-4 使用查找表的经典问题 Two Sum.mp4 [81.8 MB]
- 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-5 灵活选择键值 4Sum II.mp4 [63.9 MB]
- 4-8 二分搜索树底层实现的顺序性 Contain Duplicate III.mp4 [55.3 MB]
- coding-82.zip [23.3 MB]