【发布时间】:2017-04-01 12:26:42
【问题描述】:
如果二叉树是平衡的,二叉搜索的最佳运行时间是 O(log(n))。最坏的情况是,如果二叉树非常不平衡,它基本上代表一个链表。在这种情况下,二分查找的运行时间为 O(n)。
但是,如果树只是稍微不平衡怎么办,就像这棵树的情况:
如果我没记错的话,最好的情况仍然是 O(log n)。但最坏的情况是什么?
【问题讨论】:
-
对于那棵树,所有情况都是 O(1)。您需要指定一个以 n 为单位的树深度公式,或者提供一种算法,其复杂度可以分析以生成以 n 为单位的复杂度公式。
标签: data-structures time-complexity big-o binary-search-tree