考虑下图,
在以下序列中:
(I) a b e g h f
(II) a b f e h g
(III) a b f h g e
(IV) a f g h b e
上图的深度优先遍历是哪些?
(A)仅I,II和IV
(B)仅I和IV
(C)仅II,III和IV
(D)仅I,III和IV答案: (D)
说明:我们可以检查所有DFS的以下属性。
In DFS, if a vertex 'v' is visited
after 'u', then one of the following is true.
1) (u, v) is an edge.
u
/ \
v w
/ / \
x y z
2) 'u' is a leaf node.
w
/ \
x v
/ / \
u y z
在DFS中,访问节点后,我们首先对所有未访问的孩子进行递归。如果没有未访问的孩子(u是叶子),则控制权将返回给父级,父级然后访问下一个未访问的孩子。
这个问题的测验