这个任一时间复杂度,我看见答案上有几个题目不是log2n就是logn,是不是区别不大,
logn 其实是log2n 的一种简便写法,网上大家默认的,两个是一个东西
对于任一分支结点进行筛运算的时间复杂度为O(log n),因为堆结构的性质是任意一个结点的值都不大于(或不小于)它的父结点的值,所以每次筛运算只需要对父结点和子结点进行比较,而堆中总共有log n层,所以时间复杂度为O(log n)。
整个堆排序过程的时间复杂度为O(n log n)。因为堆排序的基本操作是在堆中进行插入和删除操作,这些操作的时间复杂度都是O(log n),所以整个过程的时间复杂度就是n次操作的时间复杂度的总和,即O(n log n)。