堆排序

Posted mike_chang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了堆排序相关的知识,希望对你有一定的参考价值。

堆排序

堆排序的思想是先调用堆的inset方法,再调用堆的remove方法输出。


实现

for (i = 0; i < size; i++)
    heap.insert(array[i]);
for (i = 0; i < size; i++)
    array[i] = heap.remove();

效率

堆的insert、remove都是log2N;且insert、remove都要执行n次,所以整体的效率是2*N*log2N,O(N*logN)。

以上是关于堆排序的主要内容,如果未能解决你的问题,请参考以下文章

选择排序(简单选择排序堆排序的算法思想及代码实现)

排序--08---堆排序

python代码实现堆排序

算法-java代码实现堆排序

一文带你了解堆排序

堆排序