斜堆

✍ dations ◷ 2025-11-08 18:52:48 #堆,数据结构,树结构

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

斜堆合并操作的递归合并过程和左偏树完全一样。假设我们要合并 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

相关

  • 达格·哈马舍尔德达格·亚尔马·昂内·卡尔·哈马舍尔德(瑞典语:Dag Hjalmar Agne Carl Hammarskjöld,1905年7月29日-1961年9月18日),瑞典外交家和作家,从1953年4月到逝世前担任联合国秘书长。他于
  • 克里米亚鞑靼人克里米亚鞑靼人(克里米亚鞑靼语:Къырымтартарлар 或 qırımtatarlar,土耳其语:Kırım Tatarlar 或 Kırım, Kırımlı, 俄语:крымские татары
  • 西南季候风西南季风,属季风亚洲中的一个季风。盛行于南亚、东南亚及部分东亚一带,为风向西南的夏季季风。西南季风来自于低空的越赤道气流。这种气流在亚洲被称为“西南季风”。西南季风
  • 达达尼尔达达尼尔(Dardanelle)是美国阿肯色州耶尔县的一座城市,人口约4000人(2000年)。
  • 自养生物自养生物,也称为生产者(producer,autotroph),在台湾称为自营生物,主要包括绿色植物和少数微生物,它们可以利用阳光、空气中的二氧化碳、水以及土壤中的无机盐等,通过光合作用或化能
  • 方部方部,为部归于四划部首。方部通常是从下、左方均可为部字。且无其他部首可用者将部首归为方部。1.指竹木编成的排筏或两船互相连结。见说文。2.相连、合并。并船而行。3.周遍
  • 阿拉伯航空运输组织阿拉伯航空运输组织(阿拉伯语:الإتحاد العربي للنقل الجوي‎,英语:Arabic Air Carriers Organization,缩写:AACO)是一个由多家阿拉伯地区的航空公司组成的
  • 南平话南平话,又称南平官话、延平官话或延平土官话,是官话在福建省南平市延平区的一个方言岛,也是官话在福建省面积最大的一个方言岛。南平话的使用人口约有1万人至2万人左右。南平话
  • 阔叶稻阔叶稻(学名:)为禾本科稻属下的一个种。
  • A2公路A2公路或A2高速公路可以指: