树、二叉树

树的定义:树是n(n>=0)个结点的优先集。n=0时称为空树。
在任意一个非空树中,有且仅有一个特定的根的结点;当n>1时,其余结点可分为m个互不相交的有限集,其中每一个集合本身又是一棵树,并称为根的子树。
注意:n>0时根节点是唯一的;m>0时,子树的个数没有限制,但它们一定是互不相交的

结点

:结点拥有的子树数
度为0的结点称为叶结点(有时也称为叶子)或终端结点
度不为0的结点称为非终端结点或分支结点
树的度是树内各结点的度的最大值
深度/高度:树中结点的最大层次,下图的树的深度为4
在这里插入图片描述

二叉树

二叉树:是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根节点和两棵互不相交的、分别称为根节点的左子树和右子树的二叉树组成。
二叉树的模型适合用于在某个阶段都是两种结果的情形,比如开和关、0和1、真和假、上和下、对和错等。

二叉树的特点:

  • 每个结点最多有两棵树,所以不存在度大于2的结点。注意不是只有两棵,而是最多有。没有子树或者有一棵子树是可以的
  • 左子树和右子树是有顺序的,次序不能任意颠倒
  • 即使树中某节点只有一棵树,也要区分它是左子树还是右子树

特殊二叉树

斜树:所有结点都是只有右子树的二叉树叫右斜树,所有结点都是只有左子树的二叉树叫左斜树
满二叉树:除了叶节点外每个结点的度都是2,且叶节点都在同一层。
完全二叉树:对一棵具有n个结点的二叉树按层序编号,如果编号为i的结点与同样深度的满二叉树中编号为i的结点在二叉树中位置完全相同,则该二叉树称为完全二叉树。(有些难理解

判断完全二叉树的方法:给每个结点按照满二叉树的结构逐层顺序编号,如果编号出现空挡,就说明不是完全二叉树,否则就是。

完全二叉树的特点:

  • 叶子结点只能出现在最下两层
  • 最下层的叶子一定集中在左部连续位置
  • 倒数二层,若有叶子结点,一定都在右部连续位置
  • 如果结点度为1,则该结点只有左孩子,即不存在只有右子树的情况
  • 同样结点数的二叉树,完全二叉树的深度最小

二叉树的性质:(重点,敲黑板了

  • 性质1:在二叉树的第i层上至多有 2^(i-1) 个结点
  • 性质2:深度为k的二叉树至多有 2^k - 1 个结点(k>=1)
  • 性质3:对任何一棵二叉树,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1
  • 性质4:具有n个结点的完全二叉树的深度为 [log2n]+1 ([x]表示不大于x的最大整数)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值