「数据结构与算法」(DSA)是编程世界的内功。但在 YouTube 的生态里,它早就分裂成了两条截然不同的修行之路:一条是面试轨——目标是把 LeetCode 按题型拆解成可背诵的 pattern,用最高效率拿到大厂 offer;另一条是竞赛轨——目标是 Codeforces/ICPC/IOI 级别的 Grandmaster 直觉,在 2 小时内手撕最优化、最短代码、最难贪心。
这两条路看似同源,实则训练方法、心智模型、甚至崇拜的偶像都天差地别。面试派讲究"套路识别"——看见数组求极值立刻反射出滑动窗口;竞赛派讲究"难题征服"——在没有任何套路可套的原创题面前,靠数学直觉和算法功底从零构造解法。
本期精选的 7 个频道,恰好横跨这条光谱:NeetCode、Abdul Bari、Back To Back SWE 代表面试轨的三大流派;Errichto、Colin Galen、William Lin 代表竞赛轨的三位 Grandmaster;而 WilliamFiset 则是横跨双轨的"可视化基础"桥梁——他用最干净的动画把 segment tree、最大流这类两派都要啃的硬核结构讲得透透的。
无论你是 3 个月后要冲刺 FAANG 面试的应届生,还是想冲进 Codeforces 紫名/橙名的算法爱好者,这份双轨地图都能帮你精准定位该花时间在谁身上。
| 频道 | 订阅量 | 轨道 | 擅长主题 | 适合人群 | 难度 |
|---|---|---|---|---|---|
| NeetCode | ~110万 | 面试 | LeetCode pattern 路线图、系统设计 | 0→1 求职者 | ⭐⭐ |
| Abdul Bari | 百万级 | 面试/基础 | 形式化复杂度、排序、DP 推导 | 想补理论根基者 | ⭐⭐ |
| Back To Back SWE | ~25万 | 面试 | 动态规划逐行推导 | DP 苦手者 | ⭐⭐⭐ |
| WilliamFiset | ~21万 | 双轨桥梁 | 数据结构与图算法可视化动画 | 想真正"懂"结构者 | ⭐⭐⭐ |
| Errichto | ~33万 | 竞赛 | 竞赛技巧、直播解题 | 进阶竞赛选手 | ⭐⭐⭐⭐ |
| Colin Galen | ~29万 | 竞赛 | 竞赛心法、upsolving 方法论 | 想系统性突破者 | ⭐⭐⭐⭐ |
| William Lin | —(IOI满分金牌) | 竞赛 | 顶尖直觉、speed-coding | 冲刺顶级竞赛者 | ⭐⭐⭐⭐⭐ |
NeetCode(@neetcode)是过去三年面试圈最大的现象级频道,订阅量约 110 万,累计播放近亿次。他本人并非科班天才,而是一个"刷了上千题才进 Google"的普通工程师——这种"普通人逆袭"的叙事本身就是他最大的号召力。
他的核心发明是 NeetCode 150 / NeetCode 250:把 LeetCode 上几千道题精简成按 pattern 分类的精选集——滑动窗口、双指针、快慢指针、区间合并、单调栈、拓扑排序……每个 pattern 配 2-3 道代表题,配网站 neetcode.io 的结构化课程、AI 模拟面试、甚至"PVP 对战模式"。
关键洞察:NeetCode 的哲学是 pattern recognition over memorization(模式识别优先于死记)。他反复强调:"不要随机刷题,要按 pattern 刷——同一个 pattern 刷 5 道,你就在大脑里建立了反射弧。"这是对传统"刷题海战术"的精准反叛。
适合人群:目标明确要进大厂、时间有限(3-6 个月)、零基础到中等水平的求职者。他的讲解节奏友好,代码清晰,是 0→1 的最佳入口。
值得一提的是,他近期开通了第二频道 NeetCodeIO(约 34 万订阅),明确表示"光讲算法已经不够解痒",开始向更广义的 CS、数学、甚至系统设计拓展——这本身释放了一个信号:纯 LeetCode 内容的天花板已近,创作者开始押注面试之外的深度。
flowchart LR
A[零基础] --> B[NeetCode 150<br/>按 pattern 刷]
B --> C[掌握 ~15 个核心 pattern]
C --> D[NeetCode 250 进阶]
D --> E[系统设计 / 面试模拟]
E --> F[大厂 Offer]
style B fill:#4ECDC4,color:#fff
style F fill:#2ECC71,color:#fff
如果说 NeetCode 是"应试教练",那 Abdul Bari 就是"理论恩师"。这位印度教育者的算法播放列表是 YouTube 上被推荐次数最多的免费 CS 课之一,单集《Asymptotic Notations Big Oh - Omega - Theta》播放高达 240 万,整个算法系列累计播放数千万。
他的讲法是纯正的教授黑板授课式:没有花哨动画,没有剪辑节奏,但胜在逻辑链条极其完整。讲排序算法时,他会把每一趟交换、每一次比较都手写推演一遍;讲递归方程时,他真的会用代入法一步步展开,让你看清 T(n) = 2T(n/2) + n 是怎么收敛到 O(n log n) 的。
关键洞察:无数观众在评论区留下的同一句话是——"我看了 10 个 Big-O 视频都没懂,Abdul Bari 一个视频让我懂了。"他的价值在于补上了别人默认你会、但你其实从没真正掌握的形式化基础。面试派可以靠 pattern 拿 offer,但如果哪天遇到一道没 pattern 的原创题,最后救你的往往就是这种底层理解。
适合人群:科班基础不牢、想真正搞懂时间复杂度推导、排序算法原理、动态规划状态转移方程的"为什么"的人。他同样有广受好评的操作系统课程。
一句话定位:别人教你"怎么做",Abdul Bari 教你"为什么"。
Back To Back SWE(约 25 万订阅)由 Benyam Ephrem 创立,定位明确:专门死磕面试题的深度推导,尤其以动态规划系列封神。代表作《Longest Common Subsequence (2 Strings) - Dynamic Programming》单集播放 22 万+。
他的风格是白板 + 逐行讲解,一道 DP 题能讲 30-40 分钟。他不直接给你 dp[i][j] 的状态方程,而是带你走完整的思维过程:先想暴力递归 → 发现重叠子问题 → 加备忘录 → 优化成自底向上的迭代 → 再做空间压缩。整个过程像"拆炸弹"——每一根线为什么这样剪,都讲得清清楚楚。
关键洞察:Back To Back SWE 的核心理念是 "教你如何推导出一个解,而不是背诵一个解"。这对 DP 这种"一看就懂、一写就废"的题型尤其致命——大多数人看懂答案是假的,只有自己能从零推出状态定义才算真懂。
适合人群:DP 长期是软肋、看题解能懂但自己写不出来的面试者。他的长视频适合"沉浸式突破"——挑一个周末,连续看 5 道 DP,能感受到明显的开窍。
WilliamFiset(@williamfiset-videos,约 21 万订阅)是这份名单里"性价比"最高的频道——体量不大,但信息密度极高。频道主 William Fiset 是 Google 工程师、ACM-ICPC 世界总决赛选手,他在 GitHub 上的 williamfiset/Algorithms 仓库(数万 star)是配套视频的 Java 实现,堪称"教科书级"开源资源。
他的杀手锏是极简而精准的动画。讲 AVL 树旋转、segment tree 区间查询、Fenwick tree(树状数组)单点更新、Dijkstra/Bellman-Ford 最短路、甚至最大流(max flow)这种面试和竞赛都绕不开的硬核结构时,他用干净的方框、箭头、颜色变化,把数据在结构里的流动可视化得清清楚楚。没有废话,没有寒暄,每句话都是干货。
关键洞察:WilliamFiset 之所以是"双轨桥梁",是因为这些高级数据结构是面试派的天花板、却是竞赛派的地板。面试可能考到 segment tree 就是 hard 题了;而在 Codeforces,segment tree 只是入门工具。无论你在哪条轨,他的视频都是把"听说过的结构"变成"真正能写出来的结构"的最短路径。
适合人群:所有想从"会用数组哈希表"进阶到"理解树形结构、图算法本质"的中高级学习者。面试党重点看他的图算法和数据结构播放列表;竞赛党重点看他的高级结构(并查集、线段树、网络流)。
graph TD
WF[WilliamFiset<br/>可视化基础]
WF --> IV[面试轨收益]
WF --> CV[竞赛轨收益]
IV --> IV1[图算法: Dijkstra/Bellman-Ford]
IV --> IV2[基础结构: AVL/堆/并查集]
CV --> CV1[线段树/树状数组]
CV --> CV2[网络流/字符串算法]
style WF fill:#FF6B6B,color:#fff
进入竞赛轨,画风骤变。这里不再有"按 pattern 分类"的温柔,取而代之的是原创难题、极限时间、0.01 秒的常数优化。下面三位是这条赛道上的顶流。
Errichto Algorithms(@errichto,约 33 万订阅,156 个视频)频道主是 Codeforces Grandmaster。他的频道有两个鲜明的招牌:一是系统性的竞赛技巧教学(二分答案、位运算技巧、组合数学、树形 DP、two-pointer 的高级用法);二是真实竞赛的直播复盘——他会把自己参加 Codeforces/CodeChef 比赛时的实时思考过程录下来,配上赛后讲解。
关键洞察:Errichto 的独特价值在于他展示了Grandmaster 在面对陌生题时真实的思维路径:如何从读题到识别这是"二分答案+贪心判定",如何在 10 分钟内排除错误方向,如何把一个模糊的直觉变成可实现的算法。这种"原生态思考"是任何教科书都给不了的。他还专门做了 "Errichto Hard Algorithms" 副频道,专攻高难题。
适合人群:已经入门竞赛、想从 Div.2 突破到 Div.1、想理解"高手到底在想什么"的进阶选手。
Colin Galen(@ColinGalen,约 29 万订阅)战绩极其硬核:Codeforces IGM(International Grandmaster,rating 2641)、ICPC 世界总决赛 2023 与 2024 选手。他的出圈视频正是讲述自己竞赛历程的《My Competitive Programming Journey (and how to practice)》。
但真正让他区别于其他竞赛博主的是他的方法论自觉。他的播放列表《Competitive Programming: How to Learn from Contests》系统讲了一件事:绝大多数竞赛选手最大的错误,是比完赛就看一眼榜单然后关掉——真正的高手会把所有没做出来的题 upsolving(赛后补题)一遍。Colin 反复强调,比赛本身只占成长的 30%,剩下 70% 来自赛后的深度复盘和补题。
关键洞察:Colin 提供的是一套元学习方法(meta-learning)——不只是教你某个算法,而是教你"如何高效地从每一场比赛里榨取成长"。他会讲:什么难度的题值得做(比你当前水平高一点的)、做不出来时该卡多久才看题解、看题解后如何重写。这种"学习如何学习"的内容在竞赛圈极其稀缺。
适合人群:卡在中段瓶颈(比如 Codeforces 蓝名/紫名)很久上不去、需要重建训练体系的选手。他的心态类内容也对焦虑的竞赛生有奇效。
William Lin(tmwilliamlin168)是这份名单里"天花板"级别的存在:IOI 2020(国际信息学奥林匹克)满分金牌——这在算法竞赛界是金字塔尖的成就,MIT 学生,Codeforces 7 星、rating 3300+。
他的频道更偏向"展示"而非"教学"——大量 speed-coding 视频,在 10 分钟内手撕一道别人要写一小时的题;也有《Starting Competitive Programming - Steps and Mistakes》这类面向新手的入门指引。看他打比赛,最大的冲击是直觉的速度:你还在读题理解题意,他已经写出第一版解法并开始调常数了。
关键洞察:William Lin 的频道更像一面"镜子"——它告诉普通学习者,经过足够多的刻意练习(他从小学就开始训练),人类对算法的直觉反应速度可以快到什么程度。它不直接教你某道题,但能提供巨大的目标感和动力。同时,他的入门系列对零基础竞赛新人也很友好。
适合人群:追求竞赛极限、需要榜样激励、或想一窥顶尖选手操作流的爱好者。
flowchart TB
subgraph 基础层
AB[Abdul Bari<br/>形式化理论根基]
WF[WilliamFiset<br/>可视化结构基础]
end
subgraph 面试轨
NC[NeetCode<br/>Pattern 路线图]
B2B[Back To Back SWE<br/>DP 逐行推导]
end
subgraph 竞赛轨
ER[Errichto<br/>Grandmaster 实战]
CG[Colin Galen<br/>upsolving 方法论]
WL[William Lin<br/>IOI 满分天花板]
end
AB --> NC
AB --> B2B
WF --> NC
WF --> B2B
WF --> ER
WF --> CG
NC --> 目标1[大厂 Offer]
B2B --> 目标1
ER --> 目标2[Codeforces 高段位]
CG --> 目标2
WL --> 目标3[IOI/ICPC 顶峰]
style AB fill:#9B59B6,color:#fff
style WF fill:#E67E22,color:#fff
style 目标1 fill:#2ECC71,color:#fff
style 目标2 fill:#3498DB,color:#fff
style 目标3 fill:#E74C3C,color:#fff
这张图谱揭示了三个关键认知:
| 你的画像 | 推荐观看顺序 |
|---|---|
| 零基础求职 | Abdul Bari(理论)→ NeetCode 150(pattern)→ WilliamFiset(查漏补缺结构) |
| 进阶求职冲刺 hard 题 | NeetCode 250 → Back To Back SWE(死磕 DP)→ WilliamFiset(图算法) |
| 竞赛入门 | WilliamFiset(结构)→ Errichto(技巧)→ William Lin(入门系列) |
| 竞赛中段突破 | Colin Galen(方法论)→ Errichto(直播实战)→ 大量 upsolving |
| 追求极限 | William Lin(目标感)+ Colin Galen(体系)+ 每天 1 场 Codeforces |
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
