内容正文:
专项知识点2 二分判定树绘制
有代码如下,其绘制判定树的办法是
ls=[22,33,44,55,66,77,88]
i,j,m=0,6,0
while i<=j :
m=(i+j)//2
if ls[m]==key:
break
elif ls[m]>key:
j=m-1
else:
i=m+1
第一步:确定中间位置(因为i=0,j=6,可以推算出m=3,即值为55)
图1.1
第二步:确定55左子树位置(因为i=0,j=2,可以推算出m=1,即值为33)
图1.2
第三步:确定55右子树位置(因为i=4,j=6,可以推算出m=5,即值为77)
图1.3
第四步:确定33左子树位置(因为i=0,j=0,可以推算出m=0,即值为22)
图1.4
第五步:确定33右子树位置(因为i=2,j=2,可以推算出m=2,即值为44)
图1.5
第六步:确定77左子树位置(因为i=4,j=4,可以推算出m=4,即值为66)
图1.6
第七步:确定77右子树位置(因为i=6,j=6,可以推算出m=6,即值为88)
图1.7
原创精品资源学科网独家享有版权,侵权必究!6
学科网(北京)股份有限公司
$$