「这是我参与2022首次更文挑战的第7天,活动详情查看:2022首次更文挑战」
树
介绍
树的概念:数据结构中的树,与我们日常中所看到的树是一样的。有很多分叉,也有很多叶子。
树,它是一种一对多的结构。
树的术语
它这里有很多术语,例如:
-
节点
途中 A1 ~ A4 都成为节点,而且有很多每个节点有 零个或多个 子节点;
-
根节点
没有父节点的节点称为 根节点,而且每一个非根节点有且只有一个父节点。A1 就是根节点
-
节点的度
一个节点下,含有的 子树 的个数 称为该 节点的度。A1 节点的度为 3,A2~A4 节点的度为 0
-
树的度
一棵树中,最大的节点的度 称为 树的度。明显可看到 结果为 3,因为 A1 节点的度为 3,是最大的。
-
叶节点或终端节点
度为零 的节点。也就是 A2 ~ A4
-
双亲与孩子
A2 ~ A4 的 双亲 是 A1。
A1 的 孩子 是 A2 ~ A4。
-
兄弟节点
具有 相同父节点 的节点互称为 兄弟节点。A2 ~ A4 互为兄弟节点。
-
节点的层次
从根开始,根为第1层,根的子节点为第2层,以此往后。上图就 2 层
-
树的高度或深度
很明显 2 层,最深了,树的高度或深度就是 2
树的种类
这里说重要的,例如:
-
二叉树
每个节点 最多 包含两颗子树,子树有左右次序之分。
-
一个节点都没,是个空
-
只有一个节点,根节点
-
只有一个左子树,没有右子树
-
只有一个右子树,没有左子树
-
两个子树都有
-
-
完全二叉树
节点的总数量:2 ^ () -1 < n <= 2 ^ () -1,
(2 的 N-1 次方 减 1 ~ 2 的 N 次方 减 1]
分支的总数量:n - 1
空节点数:n + 1
-
满二叉树
它是完全二叉树的一个特殊情况:
叶子节点,也就是最后一层,必须是满的 A4 ~ A7,一个都不能少,也不能多。
节点的总数量:2 ^ () -1, 2 的 N 次方 减 1。
-
平衡二叉树
-
排序二叉树
-
霍夫曼树
-
B树
4~7 这几个数,后续会好好讲一下,这里先跳过。
存储结构
顺序存储 和 链式存储 这两种存储方式
-
顺序存储
就像数组一样,将 二叉树,从上到下,从左到右 进行一次存储
-
链式存储
用链表的形式进行存储,通过指针来进行查找。
总结
这里讲了数据结构中,树 的一些定义,和一些 树 有哪些种类,平时常用,常见的树。以及 树的 两种 存储结构