0
如果給定一棵樹,其節點的整數爲1〜10,所有節點的分枝因子爲3,如何編寫一個遍歷從樹到樹的計數的函數離開對於每一個路徑計算從根到葉的所有路徑的所有節點
所以在這個例子中,我們假設它需要返回此:
{1: 1, 2: 5}
我試過這個輔助功能:
def tree_lengths(t):
temp = []
for i in t.children:
temp.append(1)
temp += [e + 1 for e in tree_lengths(i)]
return temp
有太多錯誤的Wi這個代碼。首先,它會在返回列表中留下遍歷中每個訪問節點的印記 - 所以很難從列表中找出哪些是我需要的值。另一方面,如果樹很大,它不會在到達「for i in t.children」之前的路徑中留下根路徑和較早節點的印記。它需要首先:複製根葉子的所有路徑;第二:專門爲每個路徑計數的最終數字返回一個列表。
請幫忙!這非常困難。
您是否想要統計路徑的數量?還是你想列出所有的路徑? – inspectorG4dget 2015-03-31 19:42:43
實際上你很難清楚你想達到什麼效果。例如,你告訴(1〜10)輸出「{1:1,2:5}」是什麼意思?什麼是關鍵,什麼是價值? – khajvah 2015-03-31 19:46:10