PriorityQueue
【leetcode 239. 滑动窗口最大值】Java优先队列——PriorityQueue类
leetcode 239. 滑动窗口最大值 题目描述: 1e5大小的nums[]数组中长度为k(1<=k<=1e5)的窗口的最大值 题解: 暴力求解O(n^2)会超时,需要O(nlogn)的解法 使用大根堆优先队列维护窗口元素,每次取最大值复杂度降为O(1),堆结构维护复杂度O(logn) 问:如果 ......
20230327 java.util.PriorityQueue
## 概念 - `public class PriorityQueue extends AbstractQueue implements java.io.Serializable` - 基于优先级堆的无界优先级队列 - 基于自然排序或指定的比较器 - 不允许 null - 队列的头部是相对于指定排序 ......
Collection - PriorityQueue源码解析
前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素)。这里牵涉到了大小关系,元素大小的评判可 ......