平衡树

✍ dations ◷ 2025-11-25 03:17:44 #数据结构,树结构

平衡树是计算机科学中的一类数据结构,为改进的二叉查找树。一般的二叉查找树的查询复杂度取决于目标结点到树根的距离(即深度),因此当结点的深度普遍较大时,查询的均摊复杂度会上升。为了实现更高效的查询,产生了平衡树。

在这里,平衡指所有叶子的深度趋于平衡,更广义的是指在树上所有可能查找的均摊复杂度偏低。

旋转(Rotate):几乎所有平衡树的操作都基于树旋转操作(也有部分基于重构,如替罪羊树),通过旋转操作可以使得树趋于平衡。对一棵查找树(search tree)进行查询、新增、删除等动作,所花的时间与树的高度h成比例,并不与树的容量 n 成比例。如果可以让树维持平衡,也就是让h维持在 O ( log n ) {\displaystyle O(\log {n})} ,且最大的数。

查询后继(successor):后继定义为大于,且最小的数。

在维护节点大小(size)后,可以支持以下操作:

查询排名(rank):排名定义为比x小的数的个数加一。

查询第k大:即排名为的数。

以下数据结构支持平衡树大多数操作,但实现有根本不同:

用于表示有序的线性数据结构,如优先队列、关联数组、键(key)-值(value)的映射等。自平衡的二叉查找树与哈希表的相比,各有优缺。平衡树在按序遍历所有键值时是量级最优的,哈希表不能。自平衡二叉查找树在查找一个键值时,最坏情况下时间复杂度优于哈希表, O ( log n ) {\displaystyle O(\log n)} 对比 O ( n ) {\displaystyle O(n)} ;但平均时间复杂度逊于hash表, O ( log n ) {\displaystyle O(\log n)} 对比 O ( 1 ) {\displaystyle O(1)}

平衡树的排序方法,虽然在平均时间复杂度上也是 O ( n log n ) {\displaystyle O(n\log n)} ,但由于cache性能、树的调整操作等,性能上不如快速排序、堆排序、归并排序等同为 O ( n log n ) {\displaystyle O(n\log n)} 复杂度的排序。

相关

  • 壁胸膜壁胸膜(英语:Parietal pleura)是胸膜的一部分。壁胸膜被覆于胸壁内侧、纵隔两侧和膈上面,也突至颈根部等处。按壁胸膜衬覆部位不同分为以下部分:
  • 三分虫属Eutrimerocephalus三跗节虫(学名:Trimerocephalus),又名三分虫,是生存于泥盆纪法门期(英语:Famennian)的一属三叶虫,生活在深海的底层。它们没有眼睛,也没有颊部棘刺,宽阔的侧板有往下
  • 妊娠最后三个月妊娠(英语:pregnancy),又称怀孕,是指胚胎或胎儿(英语:Offspring)在哺乳类雌性体内孕育成长的过程,而在哺乳动物中研究得最详细的是人类的妊娠。人类的妊娠约40周,从受精排卵算起则为38
  • 聊城聊城市,简称聊,古称东昌府,是中华人民共和国山东省下辖的地级市,位于山东省西部。市境东北与德州市相邻,东南接济南、泰安两市,西南与河南省濮阳市相连,西及西北分别与河北省邯郸市
  • 多摩动物公园多摩动物公园(日语:多摩動物公園/たまどうぶつこうえん)是东京都日野市的动物园,也称多摩动物园,是与恩赐上野动物园并列的日本知名动物园。作为都市公园的正式名称为都立七生公园
  • 1985年冬季世界大学生运动会第十二届冬季世界大学生运动会于1985年在意大利的贝卢诺举行。本次比赛于2月16日至24日举行,为期9天。本届赛事共设9个项目。共有来自30个国家和地区的大约1000名运动员参加
  • 圣乔治教堂 (里昂)圣乔治教堂(Église Saint-Georges)是法国里昂的一座罗马天主教教堂,敬礼圣乔治。它位于里昂老城(里昂第五区)的François-Bertras广场,靠近Quarantaine区和圣若望区之间的Benoît
  • 2018中国好声音《中国好声音》是一档中国电视音乐选秀节目,2018年度节目从2018年7月13日至10月12日播出。本年度节目的四位导师为谢霆锋、周杰伦、庾澄庆和李健,主持人为华少(第一期至第十期
  • 平行轴定理平行轴定理(英语:parallel axis theorem)能够很简易地,从刚体对于一支通过质心的直轴(质心轴)的转动惯量,计算出刚体对平行于质心轴的另外一支直轴的转动惯量。让
  • 时延在计算机网络中进行分组交换,分组从一台主机(源),通过一系列路由器传输,在另一台主机(目的地)结束它的进程。当分组从一个节点(主机或路由器)沿着这条路径到后继结点(主机或路由器)时,该