假设我们有一个包含n个元素的二叉堆,并希望插入另外n个元素(不一定是连续的)。这将需要多少总时间?
我认为时间复杂度为theta(n logn),因为每次插入需要logn时间。
我认为时间复杂度为theta(n logn),因为每次插入需要logn时间。
from n to 2*n
渐进意味着什么...
n=Θ(n)
2*n=Θ(n)
这不是 Θ(nlogn)… 它是 O(nlogn),因为有些插入可能需要少于精确的 logn 时间… 因此对于 n 个插入,它将花费时间 <=nlogn
=> 时间复杂度=O(nlogn)