Tree 不构建二叉搜索树的高度

Tree 不构建二叉搜索树的高度,tree,height,binary-search-tree,Tree,Height,Binary Search Tree,我有几百万个连续的数字,例如{3,1,2,…}。按照相同的顺序,数字被插入到二叉搜索树中。我需要知道这棵树有多高 是否有任何方法可以在不构建整棵树的情况下确定树的高度?如果树作为构建的一部分是平衡的,则为log2(n),其中n是数字的计数。否则,这是最好的情况,最坏的情况是n。我不知道任何算法。快速思考是,它可以沿着这条线走——第一个元素是根,树的高度是1,然后检查接下来的两个元素,取决于它们的高度h=2或3,然后检查接下来的4个元素,取决于它们是什么h=h+(1或2或3或4),然后检查接下来的

我有几百万个连续的数字,例如{3,1,2,…}。按照相同的顺序,数字被插入到二叉搜索树中。我需要知道这棵树有多高


是否有任何方法可以在不构建整棵树的情况下确定树的高度?

如果树作为构建的一部分是平衡的,则为log2(n),其中n是数字的计数。否则,这是最好的情况,最坏的情况是n。

我不知道任何算法。快速思考是,它可以沿着这条线走——第一个元素是根,树的高度是1,然后检查接下来的两个元素,取决于它们的高度h=2或3,然后检查接下来的4个元素,取决于它们是什么h=h+(1或2或3或4),然后检查接下来的8个元素和h=h+(f(元素)-返回这些元素增加树高的程度)等的函数。。。这只是一个非常简单的例子,我将努力追求。甚至不确定它是否比简单地沿着直线构建树和保存高度信息更快,但如果您管理编写该函数,它至少会在适当的位置执行。顺便说一句,这是一个有趣的问题。

根据给定的示例,二叉树不能被假定为平衡的。