树和二叉树

树型结构:

1、结点之间右分支

2、具有层次关系

根结点:非空树中无前驱结点的结点

结点的度:结点拥有的子树数

当度为零时:称为叶子(终端结点)

二叉树:由一个根结点和左子树和右子树组成

二叉树的性质:

1、在二叉树的第i层上至多有2的 i-1次方个结点(i>=1),至少有i个结点。

2、深度为k的二叉树至多有2的k次方减1个结点(k>=1),至少有k个结点。

3、对任何一颗二叉树T,如果其叶子数为n0,度为2的结点数位n2,则 n0=n2+1

总边数 B = n -1 (n为总结点数), B = n2*2 + n1*1

**满二叉树:**一颗深度为k且有2的k次方减1个结点的二叉树

特点:1、每一层上的结点数都是最大结点

2、叶子结点全部在最底层

编号规则:1、从根结点开始,自上而下,自左而右

2、每一结点位置都有元素

如图所示:在该二叉树中除了叶子结点外,其余结点都有左右子树

完全二叉树:深度为k的具有n个结点的二叉树,当且仅当其每一个结点都与深度为k的满二叉树中的编号为1到n的结点一一对应时

完全二叉树的性质:

1、具有n个结点的完全二叉树的深度为 : | log以2为底n的对数 | +1

注:|x|:称作x的底,即不超过x的最大整数

2、如果对一颗有n个结点的完全二叉树(深度为 | log以2为底n的对数 | +1 )的结点

按层序编号(从第i层到第 | log以2为底n的对数 | +1 层,每层从左到右),则对任一结点

i(1<=i<=n)有

1、如果 i=1,则结点 i 是二叉树的根,无双亲结点;如果 i>1,则其双亲是结点(i/2)

2、如果2i>n,则结点i为叶子结点,无左孩子,否则其左孩子是结点 2i

3、如果2i+1>n,则结点 i无右孩子,否则其右孩子是结点 2i+1

相关推荐
_清歌4 小时前
DSpark 深度解读:DeepSeek-V4 如何用「半自回归」把推理速度提升 85%
算法
统计实现局4 小时前
SVD 的三步走:双对角化、Givens 收敛、排序
算法
躬行见万象4 小时前
《VLA 系列》UniLab 强化训练 | G1 机器人 |复现
算法
统计实现局4 小时前
对称不定分解(Bunch-Kaufman):为什么 Cholesky 不够用
算法
统计实现局4 小时前
dqrsl 拆解:拿着 QR 结果能算出哪 5 种东西
算法
统计实现局4 小时前
为什么 Cholesky 求逆比 Gauss-Jordan 快一倍——行列式溢出防护详
算法
To_OC16 小时前
LC 994 腐烂的橘子:人人都说是 BFS 入门题,我却写了三遍才过
javascript·算法·leetcode
金銀銅鐵19 小时前
[Python] 扩展欧几里得算法
python·数学·算法
To_OC21 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode