单调队列 优先队列 堆的区别和联系?

单调队列 优先队列 堆的区别和联系是啥 感觉很像.
以及优先队列和堆的STL实现方式又有什么联系?

单调队列必须维护其内元素的有序性。

优先队列在普通队列的基础上给每个元素增加了优先级,这样每次出队的元素不再是队首的元素,而是队列中优先级最高的元素,而具体的优先级可以自行定义,典型的就是按元素从大到小或从小到大的顺序定义优先级。

堆通常是一个可以被看做一棵完全二叉树的数组对象,和队列这种线性结构有本质上的差别。

STL的实现一般是经过编译器优化的。

不知道有没有帮到您。