0
public static void main(String[] args) {
Queue<Integer> queue = new PriorityQueue<>();
for(int i = 10; i>0; i--){
queue.offer(i);
}
System.out.println(queue);
}
这个代码给出 [1,2,5,4,3,9,6,10,7,8]为什么优先级队列会产生这样的结果?
为什么呢? 由于Integer类的自然顺序,我预计它是按升序排列的数字。
优先级队列不一定是有序列表。最简单的实现将是一堆。 – Sirko
检查此链接http://stackoverflow.com/questions/7927213/java-priority-queue –