持续学习&持续更新中…
【恋上数据结构与算法】优先级队列 PriorityQueue
优先级队列 PriorityQueue
应用场景举例
优先级队列的底层实现
实现
public class PriorityQueue<E> implements Queue<E> {
private BinaryHeap<E> maxHeap;
public PriorityQueue() {
this(null);
}
public PriorityQueue(Comparator<E> comparator) {
maxHeap = new BinaryHeap<>(comparator);
}
@Override
public int size() {
return maxHeap.size();
}
@Override
public void clear() {
maxHeap.clear();
}
@Override
public boolean isEmpty() {
return maxHeap.isEmpty();
}
@Override
public void enQueue(E element) {
maxHeap.add(element);
}
@Override
public E deQueue() {
return maxHeap.remove();
}
@Override
public E front() {
return maxHeap.get();
}
}
参考
小码哥李明杰老师课程: 恋上数据结构与算法 第一季.
本文完,感谢您的关注支持!