📜  节点数与二叉树高度的关系

📅  最后修改于: 2021-09-28 09:56:10             🧑  作者: Mango

先决条件——二叉树数据结构
在本文中,我们将讨论节点数和二叉树高度之间关系的各种情况。在理解本文之前,您应该对二叉树及其属性有基本的了解。
二叉树的高度是树中从根节点到任何叶节点的最长路径。例如,图 1(b) 所示的二叉树的高度为 2,因为从根节点到节点 2 的最长路径为 2。另外,图 1(a) 所示的二叉树的高度为 4。

二叉树 –
在二叉树中,一个节点最多可以有两个孩子。

从节点数计算最小和最大高度 –
如果二叉树有n个节点,二叉树的最大高度n-1最小高度floor(log2n)

例如,图 1(a) 所示的具有 5 个节点的左偏二叉树的高度为 5-1 = 4,而图 1(b) 所示的具有 5 个节点的二叉树的高度 floor(log25) = 2。
11

从高度计算最小和最大节点数 –
如果二叉树的高度为 h ,则最小节点数为 h+1 (在左偏和右偏二叉树的情况下)。

例如,图 2(a) 所示的高度为 2 的二叉树有 3 个节点。
如果二叉树的高度为h,则当所有级别都完全满时,将达到最大节点数。节点总数为 2^0 + 2^1 + …。 2^h = 2^(h+1)-1。
例如,图 2(b) 所示的高度为 2 的二叉树有 2^(2+1)-1 = 7 个节点。

222

二叉搜索树 –
在二叉搜索树中,节点的左子节点的值小于父节点,右子节点的值大于父节点。

从节点数计算最小和最大高度 –
如果二叉搜索树中有n个节点,二叉搜索树的最大高度为n-1,最小高度为floor(log2n)。

从高度计算最小和最大节点数 –
如果二叉搜索树的高度为 h ,则最小节点数为 h+1 (在左偏和右偏二叉搜索树的情况下)。
如果二叉搜索树的高度为 h ,则最大节点数将是所有级别都完全满时。节点总数为 2^0 + 2^1 + …。 2^h = 2^(h+1)-1。

BST 中的所有规则都与二叉树中的相同,并且可以以相同的方式进行可视化。

Qu-1。树的高度是其中最长的根到叶路径的长度。高度为 5 的二叉树的最大和最小节点数为:
(A) 分别为 63 和 6
(B) 分别为 64 和 5
(C) 分别为 32 和 6
(D) 分别为 31 和 5

解决方案:根据所讨论的公式,
最大节点数 = 2^(h+1)-1 = 2^6-1 =63。
最小节点数 = h+1 = 5+1 = 6。

阙2。对于具有 50 个节点的二叉树,以下哪个高度是不可能的?
(一) 4
(乙) 5
(三) 6
(D) 无

解决方案:根据所讨论的公式,
50 个节点的最小高度 = floor(log250) = 5。因此,高度 4 是不可能的。