阅读量:0
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元素。