![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法学习
文章平均质量分 75
我猜我不会说话的
这个作者很懒,什么都没留下…
展开
-
Leftist Heaps
问题背景如果使用original heaps的数据结构,合并两个堆需要Θ(n)的时间,等同于建立一个新的堆的时间,并且拷贝操作需要额外的空间。我们可以用Leftist Heaps实现时间复杂度为O(n)的更有效率的合并。NPL的引入1. 定义:null path length,该节点到一个没有两个儿子的节点的最短路径的长度。规定NPL(NULL)=-1。2. 推论:NP原创 2016-03-30 11:06:29 · 696 阅读 · 0 评论 -
Skew Heaps
N问题背景Skew Heaps是对Leftist Heaps的改进,Skew Heaps也是一个用于快速合并的数据结构,但无需存储NPL信息,节省了空间。虽然不能保证是左倾树,但是通过无条件交换(除了其中有一棵子树为NULL时无需交换)左右子树,达到平摊意义上的左倾(因为左式堆的合并都是沿最右路径进行的,所以合并之后最右路径长度必然增加,影响操作效率,所以将其与左子树交换)。S原创 2016-03-30 18:26:55 · 3826 阅读 · 0 评论