Algorithm 二叉搜索树

Algorithm 二叉搜索树,algorithm,binary-search-tree,Algorithm,Binary Search Tree,演示一个算法,以初始为空的BST开始并进行“n”随机插入。使用统一随机数生成器获取要插入的值。测量生成的BST的高度并将该高度除以log2n。对n=100500100020003000进行此操作。。。。,10000.绘制高度/log2n的比值作为n的函数。比值应近似恒定(约为2)。验证是否如此。 我的理解:现在我们都知道BST的高度是log2n,其中'n'是树中的元素数。如果它是左偏/右偏树,那么高度等于'n'。所以,如果我们在这里测量高度,我们应该假设插入的高度是随机的。我的意思是,比率怎么可

演示一个算法,以初始为空的BST开始并进行“n”随机插入。使用统一随机数生成器获取要插入的值。测量生成的BST的高度并将该高度除以log2n。对n=100500100020003000进行此操作。。。。,10000.绘制高度/log2n的比值作为n的函数。比值应近似恒定(约为2)。验证是否如此。

我的理解:
现在我们都知道BST的高度是log2n,其中'n'是树中的元素数。如果它是左偏/右偏树,那么高度等于'n'。所以,如果我们在这里测量高度,我们应该假设插入的高度是随机的。我的意思是,比率怎么可能总是在2左右。
我的头撞到了这个

如果是左偏/右偏树,则高度等于“n”。所以,如果我们在这里测量高度,我们应该假设插入的高度是随机的

这种二叉树的高度是
n
。你不必在这里做任何假设。此外,完全平衡BST的高度为对数(n)(并非一般)


说到你们的问题,我假设你们在问随机构建的二叉树的高度。在这种情况下,您不必计算任何特定二叉树的高度

即使歪斜树的高度为
n
,其以均匀随机分布生成的可能性也非常小。所以,如果你计算随机BST的高度,它会变成O(
logn


要准确计算,请参考

将帮助您是的,我知道随机构建的BST具有对数高度……但我要问的是:比例怎么可能总是接近2……仔细阅读我的问题……您有解决方案吗?您是否浏览了链接?它们显示的预期高度为2*log(n)