堆排序

堆排序

堆排序的思想是先调用堆的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)。

posted @ 2020-06-11 23:47  zhuangrunwei  阅读(101)  评论(0编辑  收藏  举报