二叉树的复杂性

时间:2013-03-23 12:34:50

标签: algorithm search

我想知道二叉搜索树的一些复杂性。

我找不到完整的信息。我想知道二元搜索树上的以下操作的复杂性

  1. 添加/插入元素
  2. 删除元素
  3. 找到一个元素(我知道这个元素是O(log(n))

3 个答案:

答案 0 :(得分:10)

在二叉搜索树中插入,删除和搜索是:

  • O(N)在最坏的情况下;
  • O(log(N))在一般情况下。

答案 1 :(得分:7)

如果你有平衡的二叉树,那么所有三个复杂性都是O(log(N))。如果您不平衡树,可能是O(N)

答案 2 :(得分:0)

搜索有效。但是不平衡结构(通常是这种情况)可能导致搜索/插入/删除操作的O(N)。这就是为什么二进制堆或其他类型的平衡树首选O(log n)。