我正在计算高度为h且度为d的有根树中的节点和叶子的最小和最大数量。
我猜最小的叶子总是1(如果h> = 2)。 节点的最大数量应为G ^(h-2),叶子的数量应为G ^(h-1)。 对于最少的节点,我一无所知。
我要纠正还是缺少什么?
答案 0 :(得分:0)
鉴于树的高度为h,度为d,则适用以下条件。
最少节点数
要构建高度为h的树并尽可能少地包含节点,您将希望每个节点只有一个孩子。因此,您将需要h个节点。
最大节点数
要使用尽可能多的节点,您希望每个节点(叶子除外)都具有尽可能多的子节点,即d子节点。看起来像:
level nodes at level
1 1 (d^0)
2 d (d^1)
3 d^2
4 d^3
所以节点数是一个类似的数字
num_nodes = d^0 + d^1 + d^2 + d^3 + ....
这是一个几何和,可以计算为:
num_nodes = (1 - d^h)/(1 - d)