How does Java PriorityQueue maintain heap order internally? | Radha Publication