Algorithm 如何对深度优先搜索中未遍历的边进行分类?

Algorithm 如何对深度优先搜索中未遍历的边进行分类?,algorithm,depth-first-search,directed-graph,Algorithm,Depth First Search,Directed Graph,我有一个任务,需要对有向图执行深度优先搜索,并对图的所有边进行分类。但是,我不知道如何对深度优先搜索过程中未穿过的边进行分类,以及在搜索过程中如何对这些边进行分类 让我总结一下上图中的深度优先搜索 首先我们从1到2。然后我们从堆栈中弹出2个,因为无处可去,所以我们回到1。然后我们从1到3。接下来我们从3点到4点 好的,假设我得到了正确的部分,那么所有经过的边都是正确的树边?那么,如何对3到2之间的边和4到3之间的边进行分类呢 您的DFS仍应遍历3->2和4->3的边。它们分别是交叉边缘和后边缘,

我有一个任务,需要对有向图执行深度优先搜索,并对图的所有边进行分类。但是,我不知道如何对深度优先搜索过程中未穿过的边进行分类,以及在搜索过程中如何对这些边进行分类

让我总结一下上图中的深度优先搜索

首先我们从1到2。然后我们从堆栈中弹出2个,因为无处可去,所以我们回到1。然后我们从1到3。接下来我们从3点到4点


好的,假设我得到了正确的部分,那么所有经过的边都是正确的树边?那么,如何对3到2之间的边和4到3之间的边进行分类呢

您的DFS仍应遍历3->2和4->3的边。它们分别是交叉边缘和后边缘,IIRC


您只会在第一次看到某个节点时将其推送到堆栈上,但当您访问该节点时,您会查看其所有传出边缘,无论其目的地是否已被访问。

您的DFS仍应遍历3->2和4->3的边缘。它们分别是交叉边缘和后边缘,IIRC


您只能在第一次看到某个节点时将其推送到堆栈上,但当您访问它时,您会查看它的所有传出边,无论它们的目的地是否已被访问。

您不能只标记已遍历的边,然后打印未被标记的边吗?顺便说一句,你用什么软件来生成这样的图形的图像?你应该如何识别它们,或者你应该如何称呼它们?我只是从谷歌搜索中获取了图像,也就是说,我没有生成它。你不能只标记你经过的边,然后打印那些没有标记的边吗?顺便说一句,你用什么软件来生成这样的图形的图像?你应该如何识别它们或者你应该如何称呼它们?我只是从谷歌搜索中获取了图像,也就是说,我没有生成它。