根据CLRS第三版中的定义,单向连通图是指对于每一对顶点(u,v),u到v最多只有一条唯一的路径。现在我读过的大部分答案都说明我们需要从图中的每个顶点开始运行DFS算法,如果在任何情况下我们找到了一个交叉边或者一个前向边,那么这个图就不是单向连通的。我可以理解前向边的概念,但是在这个图上运行该算法会得出这样的结果:它不是单向连通的,而这个图实际上是单向连通的。我们有一个从3 -> 2 或者 1 -> 2的交叉边,具体取决于哪个顶点开始了整个过程(1还是3)。如果我们从顶点2开始DFS,则有两条交叉边:1 -> 2和3 -> 2。请问是否有人能够澄清一下?
1 -> 2
,1 -> 2 -> 1 -> 2
等。 - misberner