二进制搜索树的最小高度插入顺序

时间:2018-04-08 04:07:07

标签: algorithm binary-search-tree

因此,在我的第一课练习中,我发现插入顺序导致二叉搜索树具有最小高度和最大高度。插入的数字是[1,2,3,4]。得到的答案是:

answer

图3.9: diagram 3.9

然而,我无法理解为什么插入订单1324,1342,4213,4231不包括作为插入顺序导致最小高度,因为从技术上讲,这些不会导致具有最小高度的BST 2还有吗?

提前谢谢!

1 个答案:

答案 0 :(得分:2)

有趣的是,该文本没有提到这四种情况。他们没有最坏的情况,但他们也不是最小的。树有两个特征:

  • 从根到任意节点的最大深度
  • 从根到任意节点的平均深度

像1432这样的树的最大深度为3,平均深度为(0+1+2+3)/4 = 1.50 像3124这样的树具有最大深度2和平均深度(0+1+1+2)/4 = 1.00
像1324这样的树的最大深度为2,但平均深度为(0+1+2+2)/4 = 1.25

最好的树具有最小平均值以及最小最大深度。换句话说,最好的树可以完全填充每个级别(除了最后一个)。

例如,即使下面的两棵树具有相同数量的节点和相同的最大深度,左边的树也不是最小高度树,因为它在第三层缺少一个节点(这意味着平均深度将大于右侧的树。)

enter image description here