What is Java Priority Queue ?
PriorityQueue is an unbounded queue, based on a priority heap and its elements are ordered in their natural order. At the time of its creation, we can provide a Comparator that is responsible for ordering the elements of the
PriorityQueue doesn’t allow null values, those objects that doesn’t provide natural ordering, or those objects that don’t have any comparator associated with them. Finally, the Java
PriorityQueue is not thread-safe and it requires O(log(n)) time for its enqueing and dequeing operations.