【发布时间】:2022-01-11 13:32:06
【问题描述】:
所以我为BST 编写了一些代码,我正在寻找target node 是否包含在其中。
在每个recursive call,树的一半被“消除”,即我们将需要的节点数减少到search for in half。现在虽然我知道这等于O(log(n)) space,但它不也等于树的高度O(h)吗?
作为一个视觉示例,请参见下文:
假设我们在 BST 中寻找 14,递归调用的最大数量将等于树的高度,3?这个对吗?我想这也适用于一般情况?因为我想不出一个不正确的例子。
【问题讨论】:
-
您的推理假定树是平衡的,这在一般情况下不一定正确。如果树是平衡的,它的高度是 O(log(n)).
标签: python binary-search-tree space-complexity