二项堆
二项堆(Binomial Heap)是二项树(Binomial Tree)的集合,它与二叉堆、左偏树、斜堆一样,也是用来实现优先队列操作的。二项堆支持查找最小值、删除最小值、插入、删除、合并操作,每项操作时间复杂度为O(logn)(经过优化后,查找也是O(1))。为什么要学习二项堆?首先二项堆的合并操作为O(logn)的,而且它拥有时间复杂度,可以进行可持久化操作。
二项树
二项树是一组多叉树的序列,二项树满足以下性质:
- 第 k 棵树一共有
2k 个节点,第0棵树有一个节点 - 第