我正在尝试学习测试,我知道单个插入是O(logn)并且树的高度是n,因此比较将使时间为Ω(n log n)。
如果给出n个元素的未排序数组A,在最坏的情况下,构建BST所需的时间是Ω(n log n)。
答案 0 :(得分:2)
遍历BST可以在线性时间内完成,因此如果您可以从未排序的数组中构建BST,则可以更快地生成BST。比O(n * log(n))这意味着你可以比O(n * log(n))更快地排序未排序的数组,除非你有关于被排序元素的其他信息,否则我们知道this can't be done。 / p>
另一方面,您可以在Ω(n * log(n))中对数组进行排序,并且可以在线性时间内从排序数组中构建BST(例如,构建类似于列表的' ;树)。