1
比方說,我有身高2的一個完整的二值圖,像這樣:沖銷深度優先搜索或前序遍歷
0
1 2
3 4 5 6
那裏是從0到1 0的優勢和2,1到3和1到4,2到5和2到6.
我可以通過執行預定義的命令來獲得節點的深度優先搜索順序(0,1,3,4,2,5,6)命令遍歷。
是否有一些合理簡單的方法可以從預序遍歷,後序遍歷或按順序遍歷中獲得相反的結果,我的意思是在每個級別上你首先去,然後離開,這樣你最終與(0,2,6,5,1,4,3)?
我環顧了相當數量,並沒有發現任何適用。
N.B.如果你想知道爲什麼我想要它,我有一個基於DFS的搜索算法,因此比右邊的節點更快地找到比圖左側更多的節點。我正在考慮在正常的從左到右的dfs上運行並行進程,而在另一個從右到左的顛倒運行。
當然,作爲DFS的算法替換,我的問題是如果你能從遍歷本身得到它的話。那有意義嗎? –
恐怕我不太明白這個問題 – Dbz
對不起,如果我交給你一個圖的三種常見的DFS遍歷(in,post,和pre-order),有沒有什麼方法可以獲得上面建議的「反向」DFS列表?當然,獲取正常的DFS節點列表只是預訂遍歷。 –