【内部资料】2023csp-j/s之csp-j1题目:根节点的高度为1,一根拥有2023个节点的三叉树高度至少为( )。
根节点的高度为1,一根拥有2023个节点的三叉树高度至少为( )。
A 6
B 7
C 8
D 9
N = (3^H - 1) / 2
高为1,节点N=1 高为2,节点N=1+3 高为3,节点N=1+3+9 高为H,节点N=(3^H-1)/2
如果节点数N等于2023,我们可以使用这个公式来解出最小高度H:
2023 = (3^H - 1) / 2
首先,将公式中的2乘到等式的右边:
2 * 2023 = 3^H - 1
4046 = 3^H - 1
然后,将等式右边的-1移到等式左边:
4046 + 1 = 3^H
4047 = 3^H
接下来,取对数来解H:
H = log3(4047)
计算log3(4047)的值,我们可以得到:
H ≈ 7.69
因为树的高度必须是整数,所以最小的高度H取上限,即H = 8。
所以,根节点高度为1的情况下,一个拥有2023个节点的三叉树的最小高度至少为8。所以,答案是C选项:8。
有12345个结点的满3叉数的高度为_____写出计算过程
1 层:1 节点数:1
/ | \\
2 3 4 层:2 节点数:3
/ | \\ / | \\ / | \\
5 6 7 8 9 10 11 12 13 层:3 节点数:9
满三叉树每层节点数目
假设k-1层有n个节点 那么第k层就应该有3n个节点。也就是说这是一个首项是1,公比是3的等比数列。第n层节点数an可以表示为
an=a1*q^(n-1) = 1*3(n-1) = 3^(n-1)
满三叉树总的节点数目
总的节点数目就是对各层节点数目求和,每层的节点数目计算公式已经有了。然后就是公比数列求和就行了。一个高位n的满三叉树总节点个数
sn = a1*(1-q^n)/(1-q) = 1*(1-3^n)/(1-3) = (3^n-1)/2