首页 > 解决方案 > 关系多变的堆

问题描述

一种非常常见且非常常用的数据结构是Heap. 这种数据结构的特点是施加在其节点上的关系:如果<是一个关系并且node是一个节点,那么node < node.child对于node.

但是当你需要改变关系时会发生什么?

蛮力方法是简单地从 中提取所有元素Heap并将它们添加到Heap具有所需关系的另一个中:通常这需要O(n log(n))时间。它是否存在Heap允许以更快的方式改变其关系,可能使用就地算法?

标签: heap

解决方案


推荐阅读