Author:龙箬
Computer Application Technology
Change the World with Data and Artificial Intelligence !
CSDN@weixin_43975035
人生道理万卷书,只求随心随性行
证明:
对于含有
n
n
n 个内结点的二元树,证明
E
=
2
n
+
I
E=2n+I
E=2n+I。其中
E
,
I
E,I
E,I 分别为外部和内部路径长度。其中,
1)内结点:代表一次元素比较,用圆形结点表示,存放一个
m
i
d
mid
mid 值(下标),代表成功检索情况。
2)外结点:用方形结点表示,表示不成功检索情况
3)路径:代表检索中元素的比较序列
4)由根到所有内结点的距离之和称为内部路径长
度,记为
I
I
I
5)由根到所有外部结点的距离之和称为外部路径
长度,记为
E
E
E
6)成功检索在i级的某个内结点终止时,所需要的元素比较
次数是
i
i
i,等于根到该内结点的路径长度
+
1
+1
+1
7)不成功检索在i级的外部结点终止所需的元素比较次数是
i
−
1
i-1
i−1,等于根到该外结点的路径长度
证明如下:
① 当
n
=
1
n=1
n=1 时,
I
=
0
I=0
I=0,
E
=
2
E=2
E=2;
② 假设 当
n
=
m
n=m
n=m 时,
E
m
=
I
m
+
2
n
=
I
m
+
2
m
E_m=I_m+2n=I_m+2m
Em=Im+2n=Im+2m 成立
③则当
n
=
m
+
1
n=m+1
n=m+1 时,令增加一个内结点后二叉树高为
h
h
h,(不包括外结点)
内路径长度
I
m
+
1
=
I
m
+
h
I_{m+1}=I_m+h
Im+1=Im+h外路径长度
E
m
+
1
=
E
m
−
h
+
2
(
h
+
1
)
=
I
m
+
2
m
−
h
+
2
h
+
2
=
I
m
+
2
m
+
h
+
2
=
(
I
m
+
h
)
+
2
(
m
+
1
)
=
I
m
+
1
+
2
(
m
+
1
)
\begin{aligned} E_{m+1} &=E_m-h+2(h+1)\\ &=I_{m}+2m-h+2h+2\\ &=I_{m}+2m+h+2\\ &=(I_{m}+h)+2(m+1)\\ &=I_{m+1}+2(m+1) \end{aligned}
Em+1=Em−h+2(h+1)=Im+2m−h+2h+2=Im+2m+h+2=(Im+h)+2(m+1)=Im+1+2(m+1)
故得证!
参考致谢:
国科大 马丙鹏老师《计算机算法设计与分析》
如有侵权,请联系侵删
需要本实验源数据及代码的小伙伴请联系QQ:2225872659