User:Casawa/sandbox

A hollow heap is a type of heap data structure introduced by Thomas Hansen, Haim Kaplan, Robert Tarjan, and Uri Zwick in 2015. Hollow heaps have the same amortized efficiency as Fibonacci heaps, but aim to do so in a simpler fashion. The structure builds on many of the ideas of Fibonacci Heaps. There is a critical difference, however, in that the decrease-key operation is implemented in a lazy fashion, such that we leave the target node in the heap but remove its item, and insert a new node with that item and the new priority. We then move some of the children of the original node to the new node. This change to decrease-key enables for both a slightly simpler heap structure and lends itself better for analysis.

We will instead introduce hollow nodes, which are nodes that do not have an item. A node that does have an item is a full node. Hollow nodes only appear as a result of being converted by a full node.