- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
平衡二叉查找树
构建方法
郭建勇 coolkissmile@
定义
? 平衡二叉树(全称平衡二叉查找树)
– 是一棵二叉树
– 是一颗二叉查找树 (对于任意节点x, 其左子树的所有节点都小于x, x的右子树的节点都大
于等于x)
– 是一颗平衡树, 平衡意思是对于任意节点, 其左子树高度和右子树高度相差不超过1, 左右
子树的高度差称为平衡因子 a, 也即 |a| =1
辨析
? 平衡二叉树 vs 二叉查找树
二叉查找树也称作二叉排序树或者二叉有哪些信誉好的足球投注网站树
平衡二叉树的本质特点是左右子树的平衡, 而二
叉查找树是不要求平衡的
这也是为什么二叉有哪些信誉好的足球投注网站树在某些极端情况下有哪些信誉好的足球投注网站
效率很低的原因: 高度太高, 接近线性效率
平衡二叉树就是为了尽量降低树的高度而提出来
的.
插入
? 平衡二叉树的查找逻辑???较简单, 这里不讲
了
? 构建平衡二叉树时的逻辑需要深刻理解
? 插入节点时如果左右子树平衡就不需要调
整节点
? 如果左右不平衡那么就需要调整节点
? 由于不平衡没有一个统一的调整策略, 需要
分情况看待, 左左, 右右, 左右, 右左.
100
出现不平衡--右右
110
...
105 120
... ...
new
右右不平衡:
首先定位最小不平衡二叉树, 以100为根节点的树
如果新插入节点 new 是在100的右孩子(110)的右子树分支(以120为根的子树)
就称为右右不平衡
100
右右 : 调整过程
110
...
105 120
... ...
new
思路:
把100的右子树高度降低1,或者把100的左子树高度加1
如果能把110为根的树提高到100的位置, 那么右子树高度就降低了1
100
右右 : 调整过程
110
...
120
...
105
... new
步骤1:
把110的左子树砍掉, 此时110没有右子树了, 如图黑色部分是被暂时挪走的部分
右右 : 调整过程 100 110
120
... ...
105 new
...
步骤1:
把100以及其左子树也砍掉, 并且把110为根的树拔高一个等级, 用110替代原来100
的位置, 110成为树根
右右 : 调整过程 110
100
文档评论(0)