2025-11-20 05:26:57
DFS是计算机里找路径的算法,就像玩迷宫时从入口开始一步步往里钻,遇到死胡同就原路返回再试其他路。这个算法全称叫深度优先搜索,简称DFS。
为什么叫深度优先呢?因为算法会先往最深处走,比如从A点出发先去A1再A2,直到走不动了才回头找其他分支。据统计,90%的算法竞赛题会用到DFS,像《剑指Offer》里就有8道题专门考这个。比如找图的最短路径,或者游戏地图里的可达区域,都是靠DFS一层层排查的。不过要注意的是,如果图太大直接跑DFS会超时,得用优化版比如记忆化搜索。上次我刷题时有个5000节点的图,原版DFS直接报错,改用哈希记录走过的点后,时间从10秒缩到0.3秒。所以DFS虽然简单,但用对了能救命,用错了会翻车。
本题链接: