二叉树

定义:是n(n>=0)个结点所构成的集合,它或为空树(n=0);或为非空树,对于非空树T:
(1)有且仅有一个称作根的结点。
(2)除根节点以外的其余结点分为两个互不相交的自己T1和T2,分别称为T的左子树和右子树,且都是二叉树.

对比树的定义,主要区别有以下两点:
(1)二叉树的每个结点至多只有两颗子树(即二叉树不存在度大于2的结点 )
(2)二叉树的子树有左右之分,其次序不能颠倒(即二叉树是有序树).

二叉树具有下列重要特性:
(1)在二叉树的第i层上至多有2^(i-1)个结点(i>=1)
(2)深度为k的二叉树至多有2^k-1个结点(k>=1)
(3)对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,那么n0=n2+1.

满二叉树:深度为k且含有2^k-1个结点的二叉树.
完全二叉树:深度为k,有n个结点的二叉树,当且仅当其中每一个结点都与深度为k的满二叉树中编号从1至n的结点一一对应时,称之为完全二叉树.
完全二叉树的特点是:
1.叶子结点只能在层次最大的两层上出现
2.对任意一点,若其右分支下的子孙最大层次为l,则其做分支的子孙的最大层次毕为l或l+1.  

(4)具有n个结点的完全二叉树的深度为:不大于log2n的最大整数+1
(5)如果对一棵有n个结点的完全二叉树的结点按层序编号,则对任一结点i(1=<i<=n),有:  
1.如果i=1,则结点i是二叉树的根,无双亲;如果i>1,则其双亲PARENT(i)是结点不大于i/2的最大整数
2.如果2i>n,则结点i无左孩子(结点i为叶子结点);否则其左孩子LCHILD(i)是结点2i。
3.如果2i+1>n,则结点i无右孩子;否则其右孩子RCHILD(i)是结点2i+1.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值