如何在minHeap中实现deleteMax()花费log(n)时间

时间:2013-11-12 03:16:00

标签: algorithm data-structures

我正在实施MinHeap我知道如何实施deleteMax()但需要O(n)次 但我需要O(log(n))算法..

如果它存在,我搜索并没有找到办法做到这一点 我有deleteMax()O(log(n))的任何方式吗?

1 个答案:

答案 0 :(得分:4)

你可以创建一个Min-max heap,在O(log n)时间内创建deleteMin()deleteMax()

这是我知道做你想做的唯一O(log n)方式。 Min-max堆具有与Min-heap或Max-heap相同的渐近边界,但其实际运行时间会稍长。