- 树是一种非线性结构,由n(n>=0)个有限节点组成的具有层次关系的集合。
- 特点:
每个节点有零个或多个子结点;没有父节点的节点成为根结点;每一个非根结点有且只有一个父结点;除了根结点以外,每个子结点可以分为多个不想交的子树。
-
概念(重要)
节点的度: 一个结点含有子树的个数;A的为6
树的度:一棵树中,最大节点的度;树的度为6
叶子节点或终端节点:度为0的节点成为叶子结点;B,C,H…
双亲节点或父节点:若一个结点含有子结点,那么这个节点就是子结点的双亲节点
孩子节点或子结点:一个节点含有子树的根节点称为其子结点的父节点;
根节点:一棵树中没有双亲节点的结点。A
节点的层次:从根开始,根为第一层,根的子结点为第2层…
树的高度或深度:树中节点的最大层次;树的高度为4 -
概念(了解即可)
4 . 树与图的区别:
- 子树不相交
- 除了根结点以外,每个节点有且只有一个父节点
- 一棵N个节点的树有N-1条边
5.树的表示形式(孩子兄弟表示法)
- 树结构可以用链表的方式表示,较为方便
class Node{//树结构可以用链表的方式表示,较为方便
int value;//树中存储的数据
Node firstChild;//第一个孩子的引用
Node nextBrother;//兄弟的引用
}
重点:下一节二叉树(面试常考)!!!