树的基本概念定义和性质(附公式推导过程)

本文详细介绍了树这一重要的数据结构,包括其定义、基本术语和特性。树是一种递归结构,每个结点有且仅有一个父结点,除了根结点。结点的度表示其子结点的数量,而树的高度是结点的最大层数。树的性质包括结点数与度的关系,以及满m叉树的结点数量计算。此外,还提到了森林的概念,它是若干棵互不相交的树的集合。
摘要由CSDN通过智能技术生成

树的定义

树是n(n>=0)个节点的有限集。当n=0时,称为空树。在任意一颗非空树中应满足:

1)有且仅有一个特定的称为根的结点。

2)当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1,T2,...,Tm,其中每个集合本身又是一棵树,并且称为根的子树。

显然,树的定义是递归的,即在树的定义中又用到了其自身,树是一种递归的数据结构。树作为一种逻辑结构,同时也是一种分层结构,具有以下两个特点:

1)树的根结点没有前驱,除根节点外的所有结点有且只有一个前驱。

2)树中所有结点都可以有零个或多个后继。

树适合于表示具有层次结构的数据。树中的某个结点(除根节点外)最多只和上一层的一个结点(即其父结点)有直接关系,根节点没有直接上层结点,因此在n个结点的树中又n-1条边。而树中每个结点与下一层的零个或多个结点(即其子女结点)有直接关系。

基本术语

 1)考虑结点K。根A到结点K的唯一路径上的任意结点,称为结点K的祖先。如结点B是结点K的祖先,而结点K是结点B的子孙。路径上最接近结点K的结点E称为K的双亲,而K为结点E的孩子。根A是树中唯一没有双亲的结点在相同双亲的结点称为兄弟如结点K和结点L有相同的双亲E,即K和L是兄弟。

2)。树中一个结点的孩子个数称为该结点的度。比如结点B的度为2,树的度为3

            树中结点的最大度数称为树的度。

3)度大于0的结点称为分支结点(又称非终端结点)度为0(没有子女结点)的结点称为叶子结点(又称终端结点)。在分支结构中,每个结点的分支树就是该结点的度。

4)结点的深度。从根节点开始自顶向下逐层累加的。E的深度为3

     结点的高度。从叶节点开始自底向上逐层累加的。E的高度为2

     树的高度(或深度)。树中结点的最大层数。树的高度(深度)为4

5)有序树和无序树。树中结点的各子树从左到右是有次序的,不能互换,则称该树为有序树,否则为无序树。

6)路径。树中两个结点之间的路径是由这两个结点之间所经过的有限的结点序列构成的,

     路径长度。路径上所经过的边的个数。树的路径长度是从树根到每个结点的路径长度的总和。

   注意:由于树中的分支是有向的,即从双亲指向孩子,所以树中的路径是自顶向下的,统一双亲的两个孩子之间不存在路径。

7)森林。森林是m(m>=0)棵互不交叉的树的集合。森林的概念和树的概念十分接近,因为只要把树的根结点删去就变成了森林。反之,只要给m棵独立的树加上一个结点,并把这m棵树作为该结点的子树,则森林变成了树

树的性质

1)树中的结点树等于所有结点的度数加1。

2)度为m的树中第i层至多有m的i-1次方个结点(i>=1),因为按照满m叉树来算就可以轻松理解。

 

 

 为什么可以用第三点,因为满m叉数高度最小

字可能有点丑,勿弃

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值