16. 树

一、什么是树

  树是 n(n≥0)个 结点 的有限集合,n=0 时,称为 空树,这是一种特殊的情况。在任意一颗 非空树 中应该满足以下条件:

  • 有且仅有一个特定的称为 的结点。
  • 当 n≥1 时,其余结点可分为 m(m>0)个 互不相交的有限集合 \(T_{1}, T_{2}, ..., T_{m}\),其中每个集合本身又是一棵树,并且称为原来树的子树。

树

  树的一些常用术语如下:

  • 结点的度:结点的子树个数。
  • 树的度:树的所有结点中最大的度数。
  • 叶结点:度为 0 的结点。
  • 父结点:有子树的结点是其子树的根结点的父结点。
  • 子结点:若 A 结点是 B 结点的父结点,则称 B 结点是 A 结点的子结点。子结点也称孩子结点。
  • 兄弟结点:具有同一父结点的各节点彼此是兄弟结点。
  • 路径和路径的长度:从结点 \(n_{1}\)\(n_{k}\) 的路径为一个结点序列 \(n_{1}, n_{2}, ..., n_{k}\)\(n_{i}\)\(n_{i+1}\) 的父结点。路径所包含边的个数为路径的长度。
  • 祖先结点:沿树根到某一结点路径上的所有结点都是这个结点的祖先结点。
  • 子孙结点:某一结点的子树中的所有结点是这个结点的子孙。
  • 结点的层次:规定根结点在 1 层,其它任一结点的层数是其父结点的层数加 1。
  • 树的深度:树中所有结点中的最大层次是这棵树的深度。
  • 森林:多颗子树构成森林。

子树是不相交的;

除了根结点外,每个结点有且仅有一个父结点。

一颗 N 个结点的树有 N-1 条边。

二、树的表示

  这里,我们使用 儿子兄弟表示法 表示一棵树。结点有两个指针域,一个指向它的 儿子结点,另一个指向它的 兄弟结点

儿子兄弟表示法

posted @ 2023-07-15 18:26  星光樱梦  阅读(45)  评论(0编辑  收藏  举报