在最坏情况下,堆排序的时间复杂度是( )。

admin2021-07-09  37

问题 在最坏情况下,堆排序的时间复杂度是(    )。

选项 A、O(lgo2n)
B、O(nlog2n)
C、O(n2)
D、O(n1.5)

答案B

解析 若有n个元素的序列,将元素按顺序组成一棵完全二叉树,当且仅当满足下列条件时称为堆,大根堆是指所有结点的值大于或等于左右子结点的值;小根堆是指所有结点的值小于或等于左右子结点的值。在调整建堆的过程中,总是将根结点值与左、右子树的根结点进行比较,若不满足堆的条件,则将左、右子树根结点值中的大者与根结点值进行交换。堆排序最坏情况需要O(nlog2n)次比较,所以时间复杂度是O(nlog2n),B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/tsz0FFFM
0

最新回复(0)