数据结构与算法分析-Chapter7

Chapter7-树

7.1 树的重要概念

        直接看最关键的概念:树的高度和深度、节点的高度和深度。

7.1.1 树的深度和高度

        这俩不用想,计算出来的结果是一样的,因为是对于“树”这个概念来进行计算的。有公式:
Depth(Tree)=Height(Tree)=叶子结点所在的最大层数 Depth(Tree) = Height(Tree) = 叶子结点所在的最大层数 Depth(Tree)=Height(Tree)=叶子结点所在的最大层数

7.1.2 节点的深度和高度

        深度正如其名,反映的是从表面到“水下面”的某一个地方的距离。高度,反映的是从一个表面到“天空”上面的某一个点的距离。那么就可以很好的得出下面这一棵树的各个节点的深度和高度了(这里引用下@Mr-Cat伍可猫的博客的图):
在这里插入图片描述

节点深度高度
814
323
1023
132
632
1432
441
741
1341

7.2 二叉树

7.2.1 完全二叉树的定义

在这里插入图片描述
只有当优先把左节点排满的树才是完全二叉树:
在这里插入图片描述

7.2.2 二叉树的性质

        性质1:在二叉树上最多有2i−12^{i - 1}2i1个节点。
        性质2:深度为k的二叉树上最多含有2k−12^k - 12k1个节点。
        性质3:对任意二叉树,若它包含n0n_0n0个叶子节点、n2n_2n2个度为2的节点,则必存在关系式:n0=n2+1n_0 = n_2 + 1n0=n2+1
        性质4:具有n个节点的完全二叉树的深度为⌊log⁡2n⌋+1\lfloor \log_2 n \rfloor +1log2n+1⌈log2(n+1)⌉\lceil log_2 (n + 1) \rceillog2(n+1)⌉
        性质5:假设一棵完全二叉树有n0n_0n0个叶子节点,则这棵完全二叉树最多有2n02n_02n0个节点。例如一棵完全二叉树有665个节点,则该二叉树有665 / 2 = 332.5 ≈ 333 个叶子节点。
        性质6:具有n个节点的完全二叉树一共有1n+1⋅C2nn\frac{1}{n + 1}·C_{2n}^nn+11C2nn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值