DFS 的走法
深度优先搜索的走法是【0】。
开始练习 →
DFS 靠什么记住"还要回哪儿"
DFS 退回上一步靠的是【0】。
开始练习 →
DFS 的访问顺序由什么决定
同一张图,DFS 的访问顺序取决于【0】。
开始练习 →
⚠️ visited 在 DFS 里什么时候标
DFS 里把一个点标成"走过"的时机是【0】。
开始练习 →
DFS 从 0 出发的访问顺序
七个点的图,邻居表都按编号从小到大排好。运行下面这段程序: def dfs(g, s): seen = set() out = [] def go(u): seen.add(u) ou
开始练习 →
写一个递归 DFS
补全 dfs:从 s 出发,一进点就标 visited,把访问顺序记进 out。
开始练习 →
⚠️ 换成栈版,顺序会变
补全 dfs_stack:不用递归,自己开一个栈。每次弹出栈顶,没走过就记下来,再把它的邻居压进去。 输出访问顺序——它和递归版不一样。
开始练习 →
⚠️ 顺序不同,走到的点必须相同
把递归版和栈版都写出来,从 0 出发各跑一遍。 输出三样:递归版走到几个点 / 栈版走到几个点 / 两边走到的点集合是否相同(相同输出 结果一致,否则 结果不一致)。
开始练习 →
BFS 的走法
广度优先搜索的走法是【0】。
开始练习 →
⚠️ BFS 什么时候把点标成走过
BFS 里标记一个点的时机是【0】。
开始练习 →