如何用 PriorityQueue 实现大根堆 queueA?
这里的知识点包括:
- PriorityQueue 默认是小根堆,大根堆需要重写比较器。
- 可以在 new PriorityQueue<>() 中的参数部分加入比较器。
- 具体写法是:(v1, v2) -> v2 - v1。
- Queue 类的输入是 offer() 方法,弹出是 poll() 方法。
Queue<Integer> queueA = new PriorityQueue<>((v1, v2) -> v2 - v1);
queueA.offer(1);
queueA.poll();
queueA.size();