我在理解Java中使用“自定义比较器”进行排序时遇到麻烦。Queue<Integer> q = new PriorityQueue<>(arr.length, (a,b) -> a-b);给我升序排序,而Queue<Integer> q = new PriorityQueue<>(arr.length, (a,b) -> b-a);给我降序排序。我不明白的是这是怎么工作的?b传入元素是否a已经在数组中,反之亦然?另外,如何获得升序或降序?如果是a-b > 0,则表示a>b,那么不b应该a以升序排列吗?
添加回答
举报
0/150
提交
取消