树
树是一种抽象数据类型,用来模拟具有树状结构性质的数据集合。它是由有限个数节点通过连接,组成一个具有层次关系的集合。形状像根朝上,叶朝下的树。
1.节点:节点一般代表对象。又分为根节点、枝节点、叶结点,
2.边:连接节点的线称为边,边表示节点的关联关系。一般从一个节点到另一个节点的唯一方法就是沿着一条顺着有边的道路前进。
其它概念
1.路径:顺着节点的边从一个节点走到另一个节点,所经过的节点的顺序排列就称为“路径”。
2.根:树顶端的节点称为根,每个树都只有一个根,(例如图中的A为根)如果要把一个节点和边的集合称为树,那么从根到其他任何一个节点都必须有且只有一条路径,A是根节点。
3.父节点:若一个节点含有子节点,则这个节点称为其子节点的父节点,A是B和C的父节点。
4.子节点:一个节点含有的子树的根节点称为该节点的子节点,B和C是A的子节点。
5.兄弟节点:具有相同父节点的节点互称为兄弟节点,B和C互为兄弟结点。
6.叶节点:没有子节点的节点称为叶节点,也叫叶子节点,例如E、F、Y和Z。
7.枝节点:既有父节点又有子节点的是枝节点。
8.节点的层次:从根开始定义,根为第一层,根的子节点为第二层,以此类推。
9.深度:对于任意节点n,n的深度为从根到n的唯一路径长,根的深度为0。
10.高度:对于任意节点n,n的高度为从n到一片树叶的最长路径长,所