在PriorityQueue中,我们可以使用poll()方法来删除并返回队列中的第一个元素,这里的第一个元素指的是优先级最高的元素。 poll()方法的时间复杂度为O(log n),其中n表示PriorityQueue中元素的个数。当我们调用poll()方法时,它会首先删除队列中的第一个元素,然后重新组织队列,以确保下一个出队的元素仍然是优先级最...
【底层代码欣赏】—— PriorityQueue中的poll方法 1 public E poll() { 2 if (size == 0) 3 return null; 4 int s = --size; 5 modCount++; 6 E result = (E) queue[0];//0下标处的那个元素就是最小的那个 7 E x = (E) queue[s]; 8 queue[s] = null; 9 if (s != 0) 10 ...