选择题
在最坏情况下,堆排序的时间复杂度是______
A、
O(log2n)
B、
O(nlog2n)
C、
O(n2)
D、
O(n1.5)
【正确答案】
A
【答案解析】
若有n个元素的序列,将元素按顺序组成一棵完全二叉树,当且仅当满足下列条件时称为堆,大根堆是指根结点的值大于或等于左右子结点的值;小根堆是指根结点的值小于或等于左右子结点的值。在调整建堆的过程中,总是将根结点值与左、右子树的根结点进行比较,若不满足堆的条件,则将左、右子树根结点值中的大者与根结点值进行交换。堆排序在最坏情况下需要O(nlog2n)次比较,所以时间复杂度是O(nlog2n),选项B正确。
提交答案
关闭