1、二叉堆的合并
二叉堆:
完全二叉树,根最小。
存储时使用层序。
解1:
解2:
2、合并二项队列
3、合并两个斜堆
二叉树,根最小。
4、合并两个左式堆
5、链接存储的二叉堆中寻找第i个元素
6、斜堆中插入元素
7、左式堆中插入元素
零路径长度:从一个节点X开始到一个不具有两个儿子的Y节点的最短路径的长,可以看出有0个或者一个儿子的节点的npl=0,并且定义npl(null)=-1;
左式堆:
1.一棵二叉树
2.零路径长:左儿子≧右儿子,父节点= min{儿子} +1(这条性质导致了左式堆的严重左偏)
合并原则:根值大的堆与根值小的堆的右子堆合并(根值:根位置的元素值,并非零路径长度)