- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
平衡二叉树算法及代码
Size Balanced Tree
Size Balanced Tree(SBT)是一种平衡二叉查找树。它的论文由中国广东中山纪念中学的陈启峰
于2006 年底完成,并在Winter Camp 2007 中发表。由于SBT 的拼写很容易找到中文谐音,它
常被中国的OIer 们戏称为“傻X 树”、“Super BT ”等。但它的性能并不SB,编写起来也并
不BT。恰恰相反,SBT 易于实现,且据陈启峰论文中所言,“这是目前为止速度最快的高级二
叉有哪些信誉好的足球投注网站树”。它能在O(logn)的时间内完成所有BST 的相关操作。而且由于SBT 赖以保持平衡
的是Size 域而不是其他“无用”的域,它可以很方便地实现动态顺序统计中的select 和rank 。
性质
Size Balanced Tree (SBT )是一种通过大小(Size )域来保持平衡的二叉有哪些信誉好的足球投注网站树,它也因此得
名。它总是满足:
对于SBT 的每一个结点 t :
1. 性质(a) s[right[t] ] ≥s[left[left[t]]],s[right[left[t]]]
2. 性质(b) s[left[t] ] ≥s[right[right[t]]] ,s[left[right[t]]]
即每棵子树的大小不小于其兄弟的子树大小。
图1
如图(圈代表结点,三角代表SBT,下同):
1. s[R] ≥ s[A],s[B]
2. s[L] ≥ s[C],s[D]
旋转
SBT 的旋转(Rotations)与其他许多高级BST 相同。它是下面提到的Maintain 操作的基础。
图2
[编辑]左旋转
Left-Rotate (t)
1 k ← right[t]
2 right[t] ← left[k]
3 left[k] ← t
4 s[k] ← s[t]
5 s[t] ← s[left[t]] + s[right[t]] + 1
6 t ← k
右旋转
Right-Rotate(t)
1 k ← left[t]
2 left[t] ← right[k]
3 right[k] ← t
4 s[k] ← s[t]
5 s[t] ← s[left[t]] + s[right[t]] + 1
6 t ← k
保持性质(Maintain)
当我们插入或删除一个结点后,SBT 的大小就发生了改变。这种改变有可能导致性质(a)或(b)被
破坏。这时,我们需要用Maintain 操作来修复这棵树。Maintain 操作是SBT 中最具活力的一
个独特过程;Maintain(T)用于修复以T 为根的 SBT 。调用Maintain(T)的前提条件是T 的子树都
已经是SBT 了。
我们需要讨论的有4 种情况。由于性质a 和性质b 是对称的,所以我们仅仅详细的讨论性质a 。
1. 第一种情况:s[left[left[t]]s[right[t]]
图3 (同图1)
如图3,执行完Insert(left[t],v)后发生S[A]S[R],我们可以执行以下的指令来修复SBT :
1. 首先执行Right-Ratote(t),这个操作让图3 变成图4 ;
图4
2. 在这之后,有时候这棵树还仍然不是一棵SBT,因为 s[C]s[B] 或者 s[D]s[B]
也是可能发生的。所以就有必要继续调用Maintain(T)。
3. 结点L 的右子树有可能被连续调整,因为有可能由于性质的破坏需要再一次运
行Maintain(L)。
2. 第二种情况:s[right[left[t]]s[right[t]]
图5
在执行完Insert(left[t],v)后发生s[B]s[R],如图5,这种调整要比情况1 复杂一些。
您可能关注的文档
- 常用射频指标测试大纲.pdf
- 常用模板及支撑安装推荐图集.pdf
- 常用经典SQL语句大全完整新版-权威人士总结出的-详解+实例---共12页.pdf
- 常用英文幕墙术语.pdf
- 常用电平介绍及相互转换.pdf
- 常用算法与排序(面试).pdf
- 常用音乐术语全集-体裁术语.pdf
- 常用电源模块及电路介绍.ppt.pdf
- 常用词历时更替札记_汪维辉.pdf
- 常用音乐术语全集-音乐家名字中英对照.pdf
- 某区纪委书记关于容错纠错、澄清正名工作的调研报告.docx
- 县委办主任关于党的作风建设理论中心组研讨发言.docx
- 某市党员领导干部个人任前廉政对照检查材料.docx
- 某领导在统计造假集体约谈会上的讲话稿.docx
- 某市税务局领导班子副职落实全面从严治党“一岗双责”有关情况报告3.docx
- 某县税务局领导在政治机关建设暨绩效工作推进会上的讲话.docx
- 在某县安全生产督导工作汇报会上的主持讲话.docx
- 某县人大常委会2025年上半年工作总结和下半年工作计划.docx
- 创业基金会2024创业数据研究报告.pdf
- 骄成超声(688392)主业复苏向上,半导体业务受益3D封装-250703-华西证券-11页.pdf
文档评论(0)