簡體   English   中英

通過 DFS 確定有向圖后邊緣的不一致

[英]Inconsistency in determining directed graph's back edges via DFS

我發現了多種允許使用 DFS 確定有向圖的后邊緣的算法。 不幸的是,我發現我正在分析的其中一個圖表不一致。 請在下面找到一個最小的示例:

在此處輸入圖像描述

對於這個有向圖,我希望算法只確定一個后邊緣,即我用紅色標記的那個: E->B

相反,與我的理解不同,算法可以將邊緣B->E確定為后邊緣。 不同的結果取決於圖的遍歷,例如:

Traversal     | Back Edge
-------------------------
A->B->D->E    | E->B
A->C->D->E->B | B->E

Q1:假設圖形的后邊緣只有E->B是否正確?

Q2:如果是,哪種算法可以保證正確的DFS遍歷?

對 Q1 的回答:否。因為后邊緣依賴於 DFS 樹。

后邊的定義:給定圖的 DFS 樹,后邊是從節點到 DFS 樹中其祖先之一的邊。 換句話說,后邊是將頂點連接到在其父節點之前訪問過的頂點的邊。

根據鄰接列表中節點的順序或您決定訪問節點的順序,可能存在多個 DFS 樹。

因此,對於particular DFS tree -> Unique set of back edges

對 Q2 的回答:如前所述,不存在正確的 DFS 遍歷。 同一棵樹或圖可以存在多個 DFS 遍歷。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM