我正在阅读算法以在图表中找到关节点。
When we are in vertex u and v is its neighbor, then if dfs_low(v) >= dfs_num(u) then u is a cut vertex
dfs_num(i)
为dfs中的顶点编号。
dfs_low(i)
告诉我可以从i到达的最低编号顶点。
我想知道这个算法如何适用于3节点循环。 (看起来像一个三角形)。
运行此算法,我得到(其中i = 0,1,2)
dfs_num(i) = i
dfs_num(i) = 0
这将返回0作为切割顶点,这显然不是关节点。 我相信我在这里有一些误解。有人可以澄清一下吗?
答案 0 :(得分:1)
root是一个特殊情况,因为它没有父级。如果DFS树中有多个子节点,则根是一个关节点。非根节点v
是一个关节点,当且仅当它有一个没有后边缘的子树指向v
的祖先时。
答案 1 :(得分:0)