PriorityQueuequeue = new PriorityQueue(new Comparator (){ public int compare(int[] p1, int[] p2){ return p1[0]!=p2[0] ? p2[0]-p1[0] : p2[1]-p1[1]; //降序写法o2-o1, 小于时不改变顺序 } });
comparator
当方法的返回值大于0的时候就将数组的前一个数和后一个数做交换。以升序为例来讲解,升序的话compare方法就 return o1 - o2(o1
底层由红黑树组成,左边子节点小于右边子节点,按key排序



