<学习笔记 数据结构 树><1.2>学习二叉树

转载声明

————————————————
版权声明:本文为CSDN博主「Bee_Darker」的原创文章,遵循CC 4.0
BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Bee_Darker/article/details/84503476

数据结构–树–二叉树

定义

二叉树定义

每个节点最多有两个子树

满二叉树定义 - 完全二叉树

  • 深度为 k,且有 2k - 1 个节点
  • 叶节点除外的所有节点均含有两个子树的树
    • 除了最后一层其他都含有两个子节点

完全二叉树定义

  • 除最后一层外, 所有层都是满节点
  • 最后一层缺右边连续节点 ( 对应满二叉树删除其若干右节点 )

简便方法

  • 将本树所有节点按一种规律编号

  • 补齐为满二叉树后按同一种规律编号

如若本树所有节点与其满二叉树在节点上一 一 对应, 则为完全二叉树

性质

非空二叉树 叶节点 = 分支节点 + 1

非空二叉树第 i 层上最多有 2i-1 个节点

深度为 h 的二叉树, 最多有 2h -1 个节点 ( 满二叉树 )

n 个节点的完全二叉树深度为 [log 2n] + 1

假设深度为 k

如果是满二叉树则 n = 2k -1

但可能不是完全二叉树,故 n <= 2k -1

二叉树的中, 要想保证有 k 层, 则至少需要有 2i-1 个节点才可满足

第 k 层上最多有 2k-1 个节点, n >= 2k-1

2k-1 - 1 < n <= 2k -1

推演得出结果

n 节点的完全二叉树, 节点 按照层次有序编号 , 则有

二叉树

根节点除外

i 双亲为 i/2

i 左孩子为 2i , 若 2i > n 则无左孩子

i 右孩子为 2i + 1 , 若 2i + 1 > n 则无右孩子

————————————————
版权声明:本文为CSDN博主「Bee_Darker」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Bee_Darker/article/details/84503476

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值