我搜索过,没有找到办法,如果有的话,你们能帮我怎么做吗?
最佳答案
根据您的确切堆布局,您可能有两个候选者(假设您的根是最小元素,第二层是最大元素)。
选择最大的一个,并将其替换为堆的最后一个元素(与常规堆一样),然后执行向下的堆修复。就像常规堆一样,从位置 1 或 2(而不是 0)开始,然后像在最小-最大堆中一样下降到各个级别。
关于algorithm - 如何从最小-最大堆中删除最大元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13662302/