AVL-tree如何保证O(log(n))始终搜索

AVL-tree如何保证O(log(n))始终搜索,tree,Tree,如果这是个愚蠢的问题,请原谅。我听说AVL树有O(log(n))用于搜索,但我不明白它怎么能总是保证log(n)搜索。这是因为AVL树是一个自平衡树,所有节点的子树之间总是有最多1级的差异。BST的高度影响其搜索时间。想象一下,如果有一个BST,其线性形状为n个节点。它有n个高度,而不是原木(n)。在这种情况下,搜索时间复杂度为O(n)。(不平衡树的最坏情况)。换句话说,这意味着我们还可以通过控制树的高度为log(n)来生成一棵树,从而保证log(n)搜索时间

如果这是个愚蠢的问题,请原谅。我听说AVL树有O(log(n))用于搜索,但我不明白它怎么能总是保证log(n)搜索。

这是因为AVL树是一个自平衡树,所有节点的子树之间总是有最多1级的差异。BST的高度影响其搜索时间。想象一下,如果有一个BST,其线性形状为n个节点。它有n个高度,而不是原木(n)。在这种情况下,搜索时间复杂度为O(n)。(不平衡树的最坏情况)。换句话说,这意味着我们还可以通过控制树的高度为log(n)来生成一棵树,从而保证log(n)搜索时间