优先队列和堆的关系 什么是最小优先级队列?
浏览量:2642
时间:2021-03-15 21:48:27
作者:admin
什么是最小优先级队列?
优先级队列也称为堆。它分为最小堆和最大堆。您提到的最小优先级队列是最小堆。这是一棵二叉树。最小堆的主要特性是每个子树的根节点的值小于其子树的根节点的值。从堆中获取最小值并插入一个值并将堆调整为最小值的代价是log2(n)。该算法在时间排序调度算法中有很好的应用。这东西很有用。它通常与其他算法结合使用。例如,我们动态地给出一些数字,或者删除一些数字,然后询问当前数字的中位数是多少。或者动态插入或删除数字,并询问当前数字的最小值是多少。堆栈是一个线性表,只能在表的一端插入或删除。Queue是一个线性表,只能在表的一端插入,在另一端删除。从数据结构的角度来看,它们都是线性结构,即数据元素之间的关系是相同的。但它们是完全不同的数据类型。除了它们的基本操作集不同之外,主要的区别在于插入和删除操作的“限定性”。在计算机科学中,堆是一种特殊的树型数据结构,每个节点都有一个值。堆的数据结构一般为二进制堆。heap的特点是根节点的值最小(或最大),根节点的两个子树也是一个heap。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。