有些资料结构可以有效的存取任意元素,但有时候我们需要的只是高效存取最小的元素。 支援这种存取模式的资料结构就叫做 priority queue 或是 heap。 而 heap 经常用 heap-ordered tree 实作。

所谓 heap-ordered,就是每个节点的元素不大于其子节点的元素。 在这个排序下,树的最小元素总是在根节点。

左偏树的定义是满足 leftist property 又符合 heap-ordered 的二元树。

任何左节点的 rank 都大于等于右边兄弟节点的 rank。 rank 定义成 rightmost path 到空节点的距离。