关于完全二叉树某节点编号的二倍和而被加一分别是其左右孩子的形象化理解

 我们都知道 

        如                                 1

                                        2        3

                                      4   5   6  7这种完全二叉树的编码,都有一个特性:

即如果某个节点的序号为i,那么2i如果存在就是其左孩子,2i+1如果存在就是其右孩子,为什么呢

首先假设一个二叉树一共有k+1层,下图左侧表示节点编码,右侧表示层序

  由于第k层(倒数第二层)的节点总数比前k-1层的和都要多,所以想要2i>n这种情况出现,一定是要位于倒数第二层的,这一层讨论地没问题,前面的可以类比推理

(下面的2k都表示2的k次方)

 2^k                           第k层

2^(k+1)                                 第k+1层

按照这个方式我们让这两层都向右侧延伸的话,k层每延伸一个,k+1层必然需要延伸两个才可以回到这个状态,所以很容易发现,只要你这么延伸,

对应的 

           2^k                                       2^(k)+1                      2^k+2......

2^(k+1)  2^(k+1)+1         2^(k+1) +2      2^(k+1) +3  .......

所以满足这个规律

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值