This approach requires extra memory to store links.
A more efficient binary heap implementation uses an array.