avl树例题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例8-2,给定一个关键字序列4,5,7,2 ,1,3,6,试生成一棵 平衡二叉树。 分析:平衡二叉树实际上也是一棵二叉排序树,故可 以按建立二叉排序树的思想建立,在建立的过程中, 若遇到不平衡,则进行相应平衡处理,最后就可以建 成一棵平衡二叉树。具体生成过程见图8-14。
-2
4
-1
4
-1
5
RR 型
0
5
0
4
0
5
0
7
0
(c )插 入 7
4
0
7
(a )插 入 4
(b )插 入 5
1 1 0
2 4
5
2 2
4 7
5
0 0
7
5
0
LL 型
0 0
1
2
0 0
4
7
1 0
(d )插 入 2
1
2
(e )插 入 1
2 -1
2
5
0 0
7
4
LR 型
0 0
1
2
-1
3
5
0
1
1 0
3
4
0
0
7
(f)插 入 3
-1 0 0
1 2
4
0
5
4
-2
3
RL 型
0 0
1百度文库
2
0 0
5
6
0
1 0
6
7
0
3
0
7
(g )
插入 6 图 8 -1 4 平 衡 二 叉 树 的 生 成 过 程
平衡二叉树本身就是一棵二叉排序树,故它的查找与二 叉排序树完全相同。但它的查找 性能优于二叉排序树, 不像二叉排序树一样,会出现最坏的时间复杂度O(n), 它的时间复杂度与二叉排序树的最好时间复杂相同,都 为O(log2n)。
例8-3,对例8-2给定的关键字序列4,5,7,2,1,3,6,试用二 叉排序树和平衡二叉树两种方法查找,给出查找6的次 数及成功的平均查找长度。
分析:由于关键字序列的顺序己经确定,故得到的二叉 排序树和平衡二叉树都是唯一的。得到的平衡二叉树见 图8-14,得到的二叉排序树见图8-15。
4
2
5
1
3
7
6
图 8 -1 5 由 关 键 字 序 列 4 ,5 ,7 ,2 ,1 ,3 ,6 生 成 的 二叉排序树
从图8-15的二叉排序树可知,查找6需4次,平均查 找长度ASL=(1+2+2+3+3+3+4)/7=18/7≈2.57。
从图8-14的平衡二叉树可知,查找6需2次,平均查 找长度 ASL=(1+2+2+3+3+3+3)=17/7≈2.43。 从结果可知,平衡二叉树的查找性能优于二叉排 序树。
-2
4
-1
4
-1
5
RR 型
0
5
0
4
0
5
0
7
0
(c )插 入 7
4
0
7
(a )插 入 4
(b )插 入 5
1 1 0
2 4
5
2 2
4 7
5
0 0
7
5
0
LL 型
0 0
1
2
0 0
4
7
1 0
(d )插 入 2
1
2
(e )插 入 1
2 -1
2
5
0 0
7
4
LR 型
0 0
1
2
-1
3
5
0
1
1 0
3
4
0
0
7
(f)插 入 3
-1 0 0
1 2
4
0
5
4
-2
3
RL 型
0 0
1百度文库
2
0 0
5
6
0
1 0
6
7
0
3
0
7
(g )
插入 6 图 8 -1 4 平 衡 二 叉 树 的 生 成 过 程
平衡二叉树本身就是一棵二叉排序树,故它的查找与二 叉排序树完全相同。但它的查找 性能优于二叉排序树, 不像二叉排序树一样,会出现最坏的时间复杂度O(n), 它的时间复杂度与二叉排序树的最好时间复杂相同,都 为O(log2n)。
例8-3,对例8-2给定的关键字序列4,5,7,2,1,3,6,试用二 叉排序树和平衡二叉树两种方法查找,给出查找6的次 数及成功的平均查找长度。
分析:由于关键字序列的顺序己经确定,故得到的二叉 排序树和平衡二叉树都是唯一的。得到的平衡二叉树见 图8-14,得到的二叉排序树见图8-15。
4
2
5
1
3
7
6
图 8 -1 5 由 关 键 字 序 列 4 ,5 ,7 ,2 ,1 ,3 ,6 生 成 的 二叉排序树
从图8-15的二叉排序树可知,查找6需4次,平均查 找长度ASL=(1+2+2+3+3+3+4)/7=18/7≈2.57。
从图8-14的平衡二叉树可知,查找6需2次,平均查 找长度 ASL=(1+2+2+3+3+3+3)=17/7≈2.43。 从结果可知,平衡二叉树的查找性能优于二叉排 序树。