树与森林(一)

                                            一:  关于树的基本知识

咳咳~,今天我们一起学习

首先,它不长这样------->

也不是这样---------------->

当然,也不这样---------->  

and ----------------------->

我们数据结构中的树形结构当然炫酷无比~      蹡蹡~(骗你的(手动微笑,哈哈~))

言归正传:

-------------------------------相关定义--------------------------------------------

  • 树的定义:     树(Tree)是n(n>=0)个结点的有限集。(n = 0的树是空树。),其中每个结点本身又是一棵树,并且是根的子树
  • 结点的度:      结点拥有的子树数
  • 叶结点(终端结点):度为0的结点。
  • 分支结点       度不为0的结点。
  • 内部结点除根结点之外的分支结点。
  • 树的度树内各结点的度的最大值。
  • 结点的层次(Level)从根开始定义起,根为第一层,根的孩子为第二层。
  • 树的深度(高度)树中结点的最大层次。
  • 有序树如果将树中各结点的子树看成是从左至右有次序的,不能互换的,那么这个树就是有序树。否则,是无序树。
  • 森林(Forest):m(m>=0)棵互不相交的树的集合。对树中结点而言,其子树的集合,就是森林。

------------------------------------树的分类----------------------------------------

  • 二叉树:  

                                  特征:每个结点最多有两棵字树,即每个结点的度和树的度不大于2.

                                     1.斜树:   

                                      2.满二叉树:    3.完全二叉树:           

            【注意区分后两者的区别】:

                   满二叉树除叶子结点外的所有结点均有两个子结点。节点数达到最大值,所有叶子结点必须在同一层上。

                   满二叉树的性质:

                                      1) 一颗树深度为h,最大层数为k,深度与最大层数相同,k=h;

                                         2) 叶子数为2^(h-1);

                                         3) 第k层的结点数是:2k-1;

                                      4) 总结点数是:2^(k-1),且总节点数一定是奇数。

                    完全二叉树若设二叉树的深度为h,除第 h 层外,其它各层 (1~(h-1)层) 的结点数都达到最大个数,第h层所有的                                            结点都连续集中在最左 边,这就是完全二叉树。

二叉树的性质:                             

                           1) 在非空二叉树中,第i层的结点总数不超过 2i-1, i>=1;

                      2) 深度为h的二叉树最多有2^(h-1)个结点(h>=1),最少有h个结点;

                      3) 对于任意一棵二叉树,如果其叶结点数为n0,而度数为2的结点总数为n2,则n0=n2+1;

                      4) 具有n个结点的完全二叉树的深度为log2(n+1);

                      5)有n个结点的完全二叉树各结点如果用顺序方式存储,则结点之间有如下关系:

                                若I为结点编号则 如果i>1,则其父结点的编号为i/2;

                                如果2i<=n,则其左儿子(即左子树的根结点)的编号为2i;若2I>n,则无左儿子;

                                如果2i+1<=n,则其右儿子的结点编号为2i+1;若2i+1>n,则无右儿子。

                     6)给定n个节点,能构成h(n)种不同的二叉树,其中h(n)为卡特兰数的第n项,h(n)=C(2*n, n)/(n+1)。

                     7)设有i个枝点,I为所有枝点的道路长度总和,J为叶的道路长度总和J=I+2i。

                         }

                                          二:树与森林  

                                 https://blog.csdn.net/qq_38193883/article/details/99858074

  • 正经致谢:

                  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值