admin 管理员组

文章数量: 887021


2023年12月17日发(作者:apache使用)

priorityqueue java用法

在Java中,PriorityQueue是一种基于优先级堆的无界队列。这个数据结构可以用来存储元素,并且你可以定义一个Comparator来确定元素的优先级。PriorityQueue会根据Comparator的排序规则对元素进行排序,如果没有提供Comparator,那么元素会根据自然顺序(即它们的自然排序)进行排序。

以下是一些基本的PriorityQueue的使用方法:

java

import tyQueue;

import ator;

public class Main {

public static void main(String[] args) {

// 创建一个优先级队列,元素自然排序

PriorityQueue queue = new PriorityQueue<>();

(3);

(1);

(2);

while (!y()) {

n(()); // 打印: 1 2 3

}

// 创建一个优先级队列,使用自定义Comparator排序

PriorityQueue queueWithComparator = new

PriorityQueue<>(new Comparator() {

@Override

public int compare(Integer o1, Integer o2) {

return o2 - o1; // 降序排序

}

});

(3);

(1);

(2);

while (!y()) {

n(());

// 打印: 3 2 1

}

}

}

在上面的代码中,我们首先创建了一个默认的PriorityQueue,然后添加了一些元素。当我们调用poll()方法时,它会返回优先级最高(即最小的元素)的元素,然后从队列中移除它。我们打印了所有的元素,

它们按照自然顺序排序。


本文标签: 元素 排序 队列 使用 进行