一棵家族树:边为 1—2、1—3、2—4、2—5(每个点的邻居按编号升序排列)。执行 dfs(1, 0),骨架如下:
void dfs(int u, int fa) {
father[u] = fa;
for (int v : g[u]) {
if (v == fa) continue;
dfs(v, u);
}
}
跑完后,father[4]、father[2]、father[1] 的值依次是( )。
- A. 2、1、1
- B. 4、2、0
- C. 2、1、0
- D. 2、0、0