我开始知道Random-BST / Red-Black树的高度和其他一些树O(log n)
。
我想知道,这是怎么回事。可以说我有一棵这样的树
Binary tree http://i49.tinypic.com/96mf6v.png
树的高度基本上是树的深度,在这种情况下将是4
(离开父深度)。但人们怎么能说高度可以用O(log n)
概念来表示?
我非常喜欢算法,这一点令我很困惑。我错过了什么意思?
答案 0 :(得分:1)
在算法复杂度中,变量n
通常是指集合中的项目总数或参与某些计算。在这种情况下,n
是树中节点的总数。所以,在你发布的图片中n=31
。如果树的高度为O(log n)
,则表示树的高度与n
的对数成比例。由于这是二叉树,因此您将使用log base 2。
⌊log₂(31)⌋ = 4
因此,树的高度应该大约为4 - 这与您的示例中的情况完全相同。
答案 1 :(得分:1)
正如我在评论中解释的那样,二叉树可以有多种情况: