我想了解二叉搜索树的一些复杂性。
我找不到完整的信息。我想知道在二叉搜索树上执行以下操作的复杂度:
O(log(n))
二叉搜索树中的插入、删除和查找:
O(N)
O(log(N))
如果您有平衡的二叉树,所有三个复杂度都将为O(log(N))。如果您不平衡树,则可能为O(N)。
搜索是有效的。但不平衡的结构(这通常是情况)可能导致搜索/插入/删除操作的O(N)时间复杂度。这就是为什么二叉堆或其他种类的平衡树更受欢迎,其时间复杂度为O(log n)。