


资源介绍
文字幕英文视频教程)
《精通 LeetCode—— 攻克核心 150 题实战课程》是一套专为编程学习者打造的算法实战训练体系,聚焦 LeetCode 平台中高频核心的 150 道经典题目,通过系统的知识模块划分与细致的视频讲解,帮助学习者突破算法难关,提升代码实战能力。
课程涵盖数组字符串、双指针、哈希表、栈、链表、二叉树、二分搜索树、图论、分治、位运算、数学、动态规划等 12 大核心算法领域,每个领域均匹配对应的经典题目讲解。全套课程包含 29 个视频,所有视频均配备中文(zh-Hans)SRT 字幕,确保学习者能清晰理解讲解内容,打破语言障碍,专注于算法逻辑与解题思路的吸收。
课程模块与内容详情
1. 数组与字符串(Array and Strings)
作为算法学习的基础模块,本部分共 9 个视频,聚焦数组与字符串操作的核心考点,帮助学习者夯实编程基础。
包含 “合并两个有序数组”“移除元素”“删除有序数组中的重复项”(基础版与进阶版)“旋转数组” 等数组操作题目,覆盖数组增删改查、元素去重、数组变换等高频场景。
涵盖 “罗马数字转整数”“最后一个单词的长度”“最长公共前缀”“找出字符串中第一个匹配项的下标” 等字符串处理题目,讲解字符串解析、匹配、前缀查找等实用技巧,这些题型在面试中出现频率极高,是入门必学内容。
2. 双指针(Two Pointers)
本模块共 2 个视频,专注于双指针算法的实战应用。双指针是解决数组、字符串问题的高效技巧,能大幅优化时间复杂度。
“验证回文串” 题目讲解如何通过左右指针对称遍历,快速判断字符串是否为回文,掌握指针移动与字符判断的协同逻辑。
“判断子序列” 题目演示如何用双指针分别遍历两个字符串,高效验证一个字符串是否为另一个字符串的子序列,理解指针推进的条件与终止判断规则。
3. 哈希表(Hashmap)
哈希表是处理 “键值对应” 类问题的核心数据结构,本模块共 5 个视频,全面覆盖哈希表的常见应用场景。
包含 “赎金信”“有效的字母异位词” 等题目,讲解如何利用哈希表统计字符频率,快速判断字符是否匹配、是否存在包含关系。
涉及 “同构字符串”“单词规律” 等题目,演示哈希表在建立字符与字符、字符与单词映射关系中的用法,培养 “映射思维” 与冲突处理能力。
“两数之和” 题目作为 LeetCode 经典入门题,通过哈希表实现从暴力破解的 O (n²) 到 O (n) 的时间复杂度优化,让学习者直观感受哈希表的效率优势。
4. 栈(Stack)
栈的 “先进后出” 特性在特定场景中具有不可替代的作用,本模块 1 个视频聚焦栈的核心应用 —— 括号匹配。
“有效的括号” 题目详细讲解如何用栈存储左括号,遇到右括号时进行匹配校验,涵盖多类型括号(圆括号、方括号、花括号)的处理逻辑,同时解决括号嵌套、顺序错误等边界问题,是理解栈结构的经典案例。
5. 链表(Linked List)
链表作为线性数据结构的重要组成部分,是面试高频考点,本模块共 2 个视频,针对链表的核心问题展开讲解。
“环形链表” 题目介绍如何用快慢指针判断链表是否存在环,避免链表遍历中的无限循环问题,同时讲解指针移动速度设计(快指针一次两步、慢指针一次一步)的原理。
“合并两个有序链表” 题目演示如何通过迭代或递归的方式,将两个有序链表合并为一个新的有序链表,掌握链表节点的连接、边界处理(空链表)等关键技巧。
6. 二叉树基础(Binary Tree General)
二叉树是树形结构的基础,本模块共 5 个视频,覆盖二叉树的基本属性判断与操作。
“二叉树的最大深度”“路径总和” 题目讲解二叉树的遍历(深度优先遍历)技巧,通过递归或迭代的方式计算树的深度、判断是否存在满足目标和的路径。
“相同的树”“对称二叉树” 题目聚焦二叉树的结构与值的对比,培养对树的对称性、一致性的判断能力,理解递归对比的逻辑层次。
“完全二叉树的节点个数” 题目结合完全二叉树的特性(除最后一层外,每一层节点数均为最大值,最后一层节点靠左排列),优化节点计数方法,避免暴力遍历的低效问题。
7. 二叉树广度优先搜索(Binary Tree BFS)
广度优先搜索(BFS)是二叉树层序遍历的核心方法,本模块共 3 个视频,深入讲解 BFS 在二叉树问题中的应用。
“二叉树的右视图” 题目通过 BFS 按层遍历,记录每一层的最后一个节点,实现从右侧观察二叉树的视觉效果,理解层序遍历中的 “层标记” 技巧。
“二叉树的层平均值” 题目利用 BFS 统计每一层的节点和与节点数,计算平均值,掌握层内数据聚合的处理方式。
“二叉树的锯齿形层序遍历” 题目在 BFS 基础上,通过设置 “反转标记”,实现奇数层正序、偶数层逆序的遍历结果,培养对层序遍历结果的灵活处理能力。
8. 二分搜索树(Binary Search Tree)
二分搜索树(BST)具有 “左子树所有节点值小于根节点,右子树所有节点值大于根节点” 的特性,本模块共 3 个视频,围绕 BST 的核心考点展开。
“二叉搜索树中的最小绝对差” 题目利用 BST 的中序遍历是有序序列的特性,将 “找最小绝对差” 转化为 “有序数组中相邻元素差的最小值” 问题,简化解题逻辑。
“二叉搜索树中第 K 小的元素” 题目同样基于中序遍历的有序性,通过遍历计数找到第 K 小元素,理解 BST 与有序序列的关联。
“验证二叉搜索树” 题目讲解如何通过递归时传递 “上下边界”,判断每个节点值是否符合 BST 的特性,避免仅对比 “节点与左右子节点” 的错误判断方式。
9. 图论基础(Graph General)
图论是算法中的重要领域,本模块共 2 个视频,聚焦图的遍历与区域处理问题。
“岛屿数量” 题目通过深度优先搜索(DFS)或广度优先搜索(BFS),遍历二维网格中的 “陆地” 区域,统计独立岛屿的数量,掌握图的连通区域判断方法。
“被围绕的区域” 题目讲解如何识别二维网格中 “被 X 围绕的 O”,通过从边界 O 出发遍历,标记出未被围绕的 O,再将剩余 O 替换为 X,培养 “边界优先” 的解题思维,避免内部 O 的误判。
10. 分治算法(Divide and Conquer)
分治算法的核心是 “分而治之”,将复杂问题拆解为小问题解决后合并结果,本模块 1 个视频聚焦分治在树结构中的应用。
“将有序数组转换为二叉搜索树” 题目讲解如何将有序数组(升序)的中间元素作为根节点,左右子数组分别作为左右子树,递归构建平衡二叉搜索树,理解分治的 “拆分” 与 “合并” 逻辑,同时掌握平衡 BST 的构建技巧。
11. 位运算(Bit Manipulation)
位运算是底层编程与高效计算的重要技巧,本模块共 2 个视频,讲解位运算的实用场景。
“二进制求和” 题目演示如何通过位运算(异或求无进位和、与运算求进位)实现二进制字符串的加法,避免传统 “转十进制再相加” 的精度问题,理解位运算的底层逻辑。
“只出现一次的数字” 题目利用 “异或运算” 的特性(相同数字异或为 0,0 与任何数字异或为该数字),在 O (n) 时间复杂度、O (1) 空间复杂度下找到数组中唯一出现一次的数字,感受位运算的效率优势。
12. 数学问题(Math)
算法与数学紧密相关,本模块共 2 个视频,覆盖基础数学逻辑的编程实现。
“回文数” 题目讲解如何通过数字反转、取余等操作,判断一个整数是否为回文数,同时处理 “负数”“末尾为 0” 等边界情况,培养数学逻辑的编程转化能力。
“加一” 题目聚焦数组表示的非负整数的加一操作,处理 “末尾进位”“全 9 数组(如 [9,9,9])” 等特殊场景,理解数组与数字运算的对应关系。
课程优势
体系化覆盖核心考点:课程严格按照算法类型划分模块,从基础的数组字符串到复杂的图论、动态规划,覆盖 LeetCode 150 题中的核心题型,符合编程学习的循序渐进规律,适合从入门到进阶的不同阶段学习者。
实战导向,直击面试:所有题目均为 LeetCode 高频面试题,讲解过程不仅包含 “解题思路”,还会分析 “题目考点”“优化方向”(如时间 / 空间复杂度优化),帮助学习者理解题目背后的考察逻辑,提升面试竞争力。
中文字幕,无语言障碍:全套视频配备中文 SRT 字幕,确保学习者能清晰捕捉讲解细节,尤其适合英语基础薄弱的学习者,专注于算法本身的理解与吸收。
视频讲解,直观易懂:每个题目均为独立视频,讲解节奏适中,从 “题目分析” 到 “代码实现” 逐步推进,部分复杂题目会演示 “错误思路” 与 “修正过程”,帮助学习者避开常见坑点,培养正确的解题思维。
适用人群
编程初学者:想系统学习算法基础,建立编程思维的学习者。
求职面试者:准备技术面试,需要攻克 LeetCode 题目,提升算法实战能力的应届生或职场人。
在职程序员:希望巩固算法基础,优化代码效率,拓展技术视野的开发人员。
算法爱好者:对算法感兴趣,想通过经典题目训练提升解题能力的学习者。