0

所以我一直在学习决策树和其他东西,我一直在谷歌搜索以找到一种计算树的终端节点的方法。

让我解释

我需要找到一种方法,也许使用向量或者我不知道,我有这棵树:

              |-----6-------
             4|     
  |---2-------|------7------
  |
  |
1 |     
  |                        |------11------
  |           |-----8----10|------12------
  |-----3---5 |
              |------9-------

这棵树可以是任何大小,我需要找到每个节点的每个值.. 即

node 4 = 6+7
node 5 = 8+9
node 10 = 11+12

有什么算法可以解决这个问题吗?

4

2 回答 2

1
Populate a list of nodes with root
While there are nodes left to process
    Take next node (call it `N`) to process from list
    For each immediade child node (call it `n`) of `N`
        Add `n` to end of node list
        Add the value associated with `n` to a running total value for `N`
    Record total for `N`
    Mark `N` as processed
于 2013-10-24T20:06:39.393 回答
1

您尝试做的事情称为树遍历。如果树太深,应该考虑广度优先搜索。

于 2013-10-24T20:08:32.297 回答