【二叉树】二叉树的基础特性大总结

本文概览:

  1. 本文介绍的是最基础的二叉树节点和深度的有关规律,并不涉及严密的数学推理和证明;
  2. 在计算它的深度和节点数时,一定要画个图来辅助理解;
  3. 对于新手来说,完全可以使用不完全归纳法直接得出节点数规律,深度的规律;

通用特性

基本特点:

  1. 每个节点最多有两颗子树;
  2. 左子树和右子树时有顺序的,次序不能颠倒;
  3. 即使某节点只有一颗子树,也要区分是左子树还是右子树;

 

节点数分析:

  1. 在二叉树的第i层,至多有2i-1个结点;节点为2i-1个时为满二叉树;
  2. 深度为k的二叉树至多有2k-1个结点;

 

深度分析:

  1. 包含n个结点的二叉树的高度至少为(log2n)+1;

 


满二叉树专有特性

当需要使用满二叉树的性质时,手画一个深度为3的二叉树,使用不完全归纳法得性质。

 

节点分析:

  1. 一棵树的深度为h,最大层数为k,深度与最大层数相同,k=h;
  2. 叶子数为2h;
  3. 第k层的结点数是:2k−1;
  4. 总结点数是2k−1,且总节点数一定是奇数

 


完全二叉树专有特性

当需要使用完全二叉树的性质时,手画一个深度为3的二叉树,使用不完全归纳法得性质。

 

节点分析:

  1. 求父节点:N个结点的完全二叉树各结点如果用顺序方式存储,则结点之间有如下关系: 若I为结点编号则 如果I>1,则其父结点的编号为I/2;
  2. 求子节点:完全二叉树,如果2*I<=N,则其左儿子(即左子树的根结点)的编号为2*I;若2*I>N,则无左儿子; 如果2*I+1<=N,则其右儿子的结点编号为2*I+1;若2*I+1>N,则无右儿子。

深度分析:

  1. 结点i所在层次的深度为(log2i)+1;
  2. 具有n个结点的完全二叉树的深度为(log2n)+1或者log2(n+1);

注意:以上分析中字母取值均符合要求,例如:i>=1, k>=1;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值