我有邊緣,我想用它構建一棵樹。從邊緣構建樹
問題是我只能在邊緣按特定順序構建我的樹結構。訂單 例子:
(vertex, parent_vertex)
good: bad:
(0, ) <-top (3, 2)
(1, 0) (1, 0)
(2, 1) (3, 2)
(3, 2) (0, ) <-top
我扔迭代的邊緣和當前頂點試圖找到它在創建樹父,然後我構建了節點和插入。
result tree:
0 - 1 - 2 - 3
因此,樹中總是必須存在父添加的頂點。 問題是如何對輸入邊進行排序。聲音告訴我關於拓撲排序,但它是針對頂點。是否有可能對它進行排序?
拓撲排序有什麼問題?如果您對頂點排序,您的列表將是正確的。 – Beta 2012-07-31 14:02:10
如果你有邊緣,你有樹。你似乎缺少的唯一東西是知道哪個頂點是根。一旦你找到了根(選擇一個任意的邊並開始跟隨父),我認爲你正在尋找的是樹的預置遍歷。 – chepner 2012-07-31 14:28:10
@Beta,是的,它似乎有效 – mirt 2012-07-31 14:39:06