优先级队列中的EXTRACT-MIN
操作和DECREASE-KEY
操作之间的关系是什么?我在使用 Prim 算法的最小跨越问题的讲座中遇到了这个问题。
麻省理工学院的教授在视频中的01:07:16秒处提到了它,但我没有得到它。有人可以为我澄清一下吗?
PS:否则,我对自己对优先级队列的理解感到满意。
此序列:
DECREASE-KEY(node, -infinity)
EXTRACT-MIN
含义简单:
DELETE-KEY(node)
它基本上所做的是确保某个节点到达队列的顶部,然后将其删除。
在 Prim 的算法中,DECREASE-KEY
用于更新尚未包含在树中的节点的权重。因此,被认为太远的节点现在可能会靠近队列的顶部(因此会更快地EXTRACT-MIN
)。
我现在无法观看视频,但我的猜测是,您的教授的意思是DECREASE-KEY
增加了节点被EXTRACT-MIN
的机会,并且实际上出于同样的原因使用,因此是一种关系。