值不值得学:先看它解决什么场景

这套资料聚焦 C++ 里的深搜、回溯和广搜三块。它解决的是非常具体的工程与笔试场景:给你一张二维地图或一组离散状态,让你找出所有路径、最短步数、全排列或合法组合。很多上班族刷题卡在“递归写得乱、状态剪不清”,不是因为语法不熟,而是没建立“按层扩展”或“回退恢复现场”的肌肉记忆。这套课不灌理论,直接拿扫地机器人、迷宫出口、全排列输出这类硬场景拆解,帮你把搜索过程拆成可复用的代码骨架。如果你正准备技术岗笔试,或者做机器人寻路、规则枚举类业务,这几节课的投入产出比是明确的。

适合什么基础与建议学习顺序

它不适合零基础。你得能独立写完函数与基本递归,清楚值传递和引用的区别,懂一点 STL 容器。资料是按“深搜打基础、回溯做枚举、广搜求最优”的顺序排的,建议严格按原顺序看。先看深搜的算法思想与扫地机器人,把“走向、标记、回退”这组动作跑通;接着跳到回溯的全排列与组合输出,体会“选、递归、撤销”的模板;最后再看广搜,对照理解它和深搜在状态扩展上的差异。迷宫最少步数那条线索是分水岭,能帮你理清何时该放弃深搜改用广搜。

学完能独立做什么与资料配合方法

学完后,你应能独立完成几件事:给定二维网格,写出找路径、求最少步数、列出所有走法的代码;给定一组数字,输出全排列或指定长度的组合;在遇到变种题时,能自行判断用深搜还是广搜,并加上剪枝。资料配合上,不要只盯着视频看。每节对应的具体题目,先暂停自己写一版,哪怕只写十行也行;跑不过再对照视频里的写法找差异。重点盯两个细节:一是标记数组什么时候置零,二是队列里存的是坐标还是带步数的状态。把这几组代码亲手敲进编译器跑通,比连看两遍视频管用得多。


学习深搜算法、回溯算法、广搜算法

课程目录

*   01 C++算法 - 深搜:算法思想.mp4 (43.94 MB), 16:09

*   02 C++算法 - 深搜:扫地机器人.mp4 (104.26 MB), 35:36

*   03 C++算法 - 深搜:迷宫出口.mp4 (87.69 MB), 28:39

*   04 C++算法 - 深搜:迷宫的最少步数.mp4 (83.20 MB), 26:05

*   05 C++算法 - 深搜:迷宫的第一条路径.mp4 (95.13 MB), 29:18

*   06 C++算法 - 回溯:迷宫的所有路径.mp4 (96.57 MB), 29:46

*   07 C++算法 - 回溯:全排列的所有结果.mp4 (54.28 MB), 17:49

*   08 C++算法 - 回溯:组合的输出.mp4 (42.50 MB), 13:07

*   09 C++算法 -广搜:算法思想.mp4 (41.57 MB), 14:29

*   10 C++算法 -广搜:迷宫的最少步数.mp4 (98.04 MB), 30:46

*   11 C++算法 -广搜:迷宫的最短路径.mp4 (99.55 MB), 28:23