java中priorityqueue的用法是什么

PriorityQueue是Java中的一个数据结构,它是一个优先级队列,可以根据元素的优先级进行排序和访问。

PriorityQueue的用法如下:

创建PriorityQueue对象:

PriorityQueue<Integer> pq = new PriorityQueue<>();

可以根据需要指定比较器来创建PriorityQueue对象,比如:

PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder());

添加元素:
使用add()offer()方法向PriorityQueue中添加元素,例如:

pq.add(5);
pq.offer(10);

访问队首元素:
使用peek()方法可以访问PriorityQueue的队首元素,即优先级最高的元素,例如:

int first = pq.peek();

删除队首元素:
使用poll()方法可以删除并返回PriorityQueue的队首元素,例如:

int removed = pq.poll();

判断队列是否为空:
使用isEmpty()方法可以判断PriorityQueue是否为空,例如:

boolean empty = pq.isEmpty();

获取队列元素数量:
使用size()方法可以获取PriorityQueue中的元素数量,例如:

int size = pq.size();

需要注意的是,PriorityQueue中的元素默认按照自然顺序进行排序,可以使用比较器来自定义排序规则。另外,PriorityQueue不允许插入null元素。

阅读剩余
THE END