给定有向图 G(V,E),我使用DFS算法获取具有给定节点 X 作为源的所有路径。让我们调用 G1(V,E)由DFS算法产生的图形。
我想知道有没有办法恢复G1中未包含的G的剩余节点和边缘。换句话说,我想恢复并存储 G-G1 的结果。
谢谢
答案 0 :(得分:1)
我认为你不能恢复G1中未使用的G的边缘,因为G1总是可能包含实际存在的所有边缘。给定G1,你可以为它添加产生似乎合理的G的边缘,但是如果再次对它们运行DFS,这个G和原始G1将产生相同的图形,所以你不能分辨出哪个是正确的答案
更一般地说,您有一个函数可以将具有V顶点和E边的图形映射到具有V顶点和V-1边的图形。具有E> V-1边缘的图将被映射到具有V-1边缘的图。你不知道两者中哪一个是原始图。实际上,对于V和E的许多值,(V,E)顶点和边缘的图形将多于(V,V-1)顶点和边缘的图形,因此您将有多个图形(V,E)顶点和边缘映射到同一个DFS树,你将无法从DFS树中分辨出你从哪个开始。