Я немного искал и выглядит как PriorityQueue
, работающий как мини-куча по умолчанию в Java.Итак, зачем переопределять компаратор?Я видел, как люди делают это даже для целых чисел.Я что-то здесь упускаю?Я новичок в java.
Я попробовал оба приведенных ниже кода для использования в решении leetcode, требующем реализации min-heap
, и оба были приняты.Вот фрагмент кода:
// Implementing comparator
PriorityQueue<Integer> minHeap = new PriorityQueue<>(10,new Comparator<Integer>() {
public int compare(Integer a, Integer b) {
return a - b;
}
});
// Not implementing comparator - why can't we just do this?
PriorityQueue<Integer> minHeap = new PriorityQueue<>();