数据结构——树与二叉树

数据结构——树与二叉树

文章目录

树的基本概念

树的定义

见王道书P119


树的性质✅

  • 结点数 = 总度数(分支数) + 1,这个 1 是根结点。

  • 度为 m 的树 m 叉树
    任意结点的度 <= m 任意结点的度 <= m
    至少有一个结点度 = m 允许所有结点的度都 < m
    一定是非空树,至少有 m + 1 个结点 可以是空树
  • 度 为   m   的 树 、   m   叉 树 , 第   i   层 至 多 有   m i − 1   个 结 点 \begin{array}{l} 度为\ m\ 的树、\ m\ 叉树,第\ i\ 层至多有\ {m^{i - 1}}\ 个结点 \end{array}  m  m  i  mi1 

  • 高 度 为   h   的   m   叉 树 、 m 度 树 至 多 有   ( m h − 1 ) ( m − 1 )   个 结 点 ( 等 比 数 列 求 和 ) \begin{array}{l} 高度为\ h \ 的\ m \ 叉树、m 度树至多有\ \frac{ {({m^h} - 1)}}{ {(m - 1)}}\ 个结点(等比数列求和) \end{array}  h  m m (m1)(mh1) 

  • 高 度 为   h   的 度 为   m   的 树 至 少 有   h + m − 1 个 结 点 ( 等 比 数 列 求 和 ) \begin{array}{l} 高度为\ h \ 的度为\ m\ 的树至少有\ h + m - 1 个结点(等比数列求和) \end{array}  h  m  h+m1

  • KaTeX parse error: Undefined control sequence: \ at position 43: …点的\ m\ 叉树的最小高度为\̲ ̲\left\lceil { { {…



二叉树(BinaryTree)

二叉树的定义和主要特性

在这里插入图片描述
注意以上都是向下取整

在这里插入图片描述

在这里插入图片描述

二叉树的性质✅

KaTeX parse error: Unknown column alignment: * at position 789: …{\begin{array}{*̲{20}{c}} { {n_0}…


二叉树的存储结构和基本操作

顺序存储

满二叉树和完全二叉树可以采用顺序存储

同“串”一样,我们从下标 1 开始存储,方便对应。

#define MaxSize 255
ElemType data[MaxSize];

基本操作

在这里插入图片描述

使 用 顺 序 存 储 的 二 叉 树 , 有 以 下 性 质 : 结 点   i   的 左 孩 子 — — 2 i 结 点   i   的 右 孩 子 — — 2 i + 1 结 点   i   的 父 结 点 — — ⌊ i / 2 ⌋ 结 点   i   所 在 层 — — ⌈ log ⁡ 2 ( i + 1 ) ⌉ = ⌊ log ⁡ 2 i ⌋ + 1 判 断 结 点   i   是 否 有 左 孩 子 — — 2 i < = n ? 判 断 结 点   i   是 否 有 右 孩 子 — — 2 i + 1 < = n ? 判 断 结 点   i   是 否 是 叶 子 / 分 支 结 点 — — i > ⌊ n / 2 ⌋ ? \begin{array}{l} 使用顺序存储的二叉树,有以下性质:\\ 结点\ i\ 的左孩子——2i\\ 结点\ i\ 的右孩子——2i+1\\ 结点\ i\ 的父结点——\left\lfloor {i/2} \right\rfloor\\ 结点\ i\ 所在层——\left\lceil { { {\log }_2}(i + 1)} \right\rceil = \left\lfloor { { {\log }_2}i} \right\rfloor + 1\\ 判断结点\ i\ 是否有左孩子——2i<=n?\\ 判断结点\ i\ 是否有右孩子——2i+1<=n?\\判断结点\ i\ 是否是叶子/分支结点——i>\left\lfloor {n/2} \right\rfloor?\\ \end{array} 使 i 2i i 2i+1 i i/2 i log2(i+1)=log2i+1 i 2i<=n? i 2i+1<=n? i 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值