最近我已經開始在java中使用優先級隊列,並且我已經發現了自己似乎並不瞭解的東西。我用比較類以我的方式對優先級隊列進行排序。優先級隊列構造函數中的參數
下面是一個簡單的程序,我所做的: -
package main;
import java.util.Comparator;
import java.util.PriorityQueue;
class PQ implements Comparator<Integer> {
public int compare(Integer o1, Integer o2) { // sort in the descending order
return o2 - o1;
}
}
public class Main {
public static void main(String[] args) {
int[] list = { 1, 5, 6, 9, 10, 3, 5, 2, 13, 15, 17, 19, 25, 1, 0 };
PQ pqs = new PQ();
PriorityQueue<Integer> pq1 = new PriorityQueue<Integer>(10, pqs);
// what does this "10" parameter does?
for (int x : list) {
pq1.offer(x); // put values in to the queue
}
for (int x : list) {
System.out.println(pq1.poll()); // pops out from the queue.
}
}
}
我的問題是什麼呢整數參數「10」是指在優先級隊列構造(想過去,但我不知道是什麼?它)
我搜查了互聯網,發現它用來指定初始容量,但仍然無法清楚地理解它。
任何人都可以解釋我做了什麼嗎?
謝謝你的時間。