The only difference is which extreme sits at the root. A min-heap keeps its smallest value on top; a max-heap keeps its largest. Both obey the same shape rule and the same parent-child ordering, just flipped.
In a min-heap, every parent is smaller than or equal to its children. In a max-heap, every parent is larger than or equal to its children. Neither orders siblings, so you cannot read a sorted list off the array.
You pick based on what you pull first. Want the cheapest task next? Min-heap. Want the highest-scoring item? Max-heap. Peeking the top costs O(1); removing it costs O(log n) either way.
A common trick: if your library only ships one kind, negate the keys to fake the other. That saves writing a second comparator and avoids subtle sign bugs.
This answer doesn't lend itself to a diagram - it reads best . No credits were charged.
Why there's no diagram: “”
The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓
The diagram below the answer is the concept . Jump to it ↓