斜堆

✍ dations ◷ 2025-09-10 05:30:44 #堆,数据结构,树结构

斜堆是左偏树的一个变种。斜堆是一棵保持堆有序的二叉树,但是它不满足左偏性质,或者说斜堆根本就没有“距离”这个概念——它不需要记录任何一个节点的距离。从结构上来说,所有的左偏树都是斜堆,但反之不然。

斜堆合并操作的递归合并过程和左偏树完全一样。假设我们要合并 A 和 B两个斜堆,且 A 的根节点比 B 的根节点小,我们只需要把 A 的根节点作为合并后新斜堆的根节点,并将 A 的右子树与 B 合并。由于合并都是沿着最右路径进行的,经过合并之后,新斜堆的最右路径长度必然增加,这会影响下一次合并的效率。所以合并后,通过交换左右子树,使整棵树的最右路径长度非常小(这是启发规则)。然而斜堆不记录节点的距离,在操作时,从下往上,沿着合并的路径,在每个节点处都交换左右子树。通过不断交换左右子树,斜堆把最右路径甩向左边了。

举例。合并前:SkewHeapMerge1.svg


合并后SkewHeapMerge7.svg

举例:SkewHeapMerge1.svg

SkewHeapMerge2.svg

SkewHeapMerge3.svg

SkewHeapMerge4.svg

SkewHeapMerge5.svg

SkewHeapMerge6.svg

SkewHeapMerge7.svg

相关

  • 空位期空位期(空位时代,英语:Interregnum)是政府、组织或社会秩序中断的时期。例如指一个君主离任和其继承人继任之间的时期。除去议会制国家的悬峙国会以外,此名词(interregnum)在英语中
  • 太祖太祖可以有下列数种含义:
  • 1963年请参看:(第36届,1964年颁发)(其他奖项参见奥斯卡金像奖获奖名单)
  • 后悔懊恼或后悔是人类的一种心理。后悔通常会在完成某些事或做了某决择之后认为做错了之后而产生的心理。后悔产生的情况很多,视乎该人是否认为自己错了、做错后后果的严重性和该
  • 币斑病币斑病,在刈割较低的冷地型草的果岭上会出现小的圆形币斑,这些斑点会逐渐凹陷。币斑病一般是很小的枯点或者是直径小于5厘米的圆形枯斑。这些小的圆斑在病情严重时也可能会凝
  • 铁血锄奸团铁血锄奸团(又称锄奸队)是中日战争期间由中国民间自组的抗日组织,有数个组织皆以铁血锄奸团为名,同时出现在上海、扬州及山东,内部也有国民党的特工人员。抗日战争结束后,东北也
  • 丙二酸根丙二酸根(Malonate)为脱除两个氢离子的丙二酸,为一带两个负电的离子基团,化学式为CH2(COO)22−。丙二酸根化合物包含盐类等离子化合物,及酯类等分子化合物,包含丙二酸根在结构上与
  • 赵东润赵东润(韩语:조동윤;1871年-1923年),雅号惠石(韩语:혜석),本贯豊壤赵氏,李氏朝鲜末期政治家、大韩帝国军和大日本帝国陆军军人。光绪13年(1887年)科举庭试文科丙科合格,任总御营军司马,建阳
  • 库利奇库利奇(俄语:кулич)是在东正教复活节期间食用的一种面包,是正教会传统面包的一种,主要在俄罗斯、白俄罗斯、保加利亚、塞尔维亚、乌克兰等地食用。库利奇只能在复活节之后的
  • Android软件开发Android软件开发是指开发在Android上运行的应用程序的活动,以Java作为主要编程语言,并使用Android软件开发工具包。