-
树状图是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树;
- 相关术语
-
树的结点(node):包含一个数据元素及若干指向子树的分支;
-
孩子结点(child node):结点的子树的根称为该结点的孩子;
-
双亲结点:B 结点是A 结点的孩子,则A结点是B 结点的双亲;
-
兄弟结点:同一双亲的孩子结点; 堂兄结点:同一层上结点;
-
祖先结点: 从根到该结点的所经分支上的所有结点
-
子孙结点:以某结点为根的子树中任一结点都称为该结点的子孙
-
结点层:根结点的层定义为1;根的孩子为第二层结点,依此类推;
-
树的深度:树中最大的结点层
-
结点的度:结点子树的个数
-
树的度: 树中最大的结点度。
-
叶子结点:也叫终端结点,是度为 0 的结点;
-
分枝结点:度不为0的结点;
-
有序树:子树有序的树,如:家族树;
-
无序树:不考虑子树的顺序;
-
- 分类
- 二叉树
- 二叉查找树
- 红黑树
- B树
- B+树