最后更新于7天前
这有帮助吗?
于结点 i ,其子结点为 2i+1 与 2i+2 。
堆的应用 堆主要是用来实现优先队列,下面是优先队列的应用示例:
操作系统动态选择优先级最高的任务执行。 静态问题中,在 N 个元素中选出前 M 名,使用排序的复杂度:O(NlogN),使用优先队列的复杂度: O(NlogM)。
使用堆来实现优先队列,可以使入队和出队的复杂度都很低。