树的定义及相关术语

1.树是一种非线性的数据结构,它是由n个有限结点组成有层次关系的集合.

2.树具有以下特点,可以根据这些特点来判断一个数据结构是否是树

  • 每个结点具有0个或多个子结点
  • 每个子结点只有一个父结点
  • 没有前驱的结为根结点
  • 除了根结点外,每个子结点又可以由m棵不相关的子树组成

3.相关术语定义

  1. 节点的度:一个节点含有的子树的个数称为该节点的度;
  2. 叶节点终端节点:度为零的节点称为叶节点;
  3. 非终端节点分支节点:度不为零的节点;
  4. 双亲节点:在含有孩子的节点中,这个节点称为孩子节点的双亲节点;
  5. 孩子节点:一个节点子树的根节点称为孩子节点;
  6. 兄弟节点:具有相同双亲节点的节点互称为兄弟节点;
  7. 树的度:一棵树中,最大的节点的度称为树的度;
  8. 节点的层次:从根开始定义起,根为第0层,根的孩子为第1层;
  9. 树的高度深度:树中节点的最大层次;
  10. 堂兄弟:双亲在同一层的节点互为堂兄弟;
  11. 节点的祖先:从根到该节点所经分支上的所有节点;
  12. 子孙:以某节点为根的子树中任一节点都称为该节点的子孙。
  13. 森林:由m(m>=0)棵互不相交的树的集合称为森林;

4.分类

 

二叉树:每个结点最多包含两棵子树的树

树和二叉树的三个主要差别:

  1. 树的结点个数至少为1,而二叉树的结点个数可以为0;
  2. 树中结点的最大度数没有限制,而二叉树结点的最大度数为2;
  3. 树的结点无左、右之分,而二叉树的结点有左、右之分

完全二叉树:一棵有n个结点的二叉树,按满二叉树的编号方式对它进行编号,若树中所有结点和满二叉树1~n编号完全一致,则称该树为完全二叉树(Complete Binary Tree)

 

满二叉树:是每个结点都有0个或2个子结点的树

 

PS:即满二叉树一定是完全二叉树

 

二叉树及完全二叉树的性质:

  • 在二叉权树的第i层上至多有2i-1个结点.

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值