“树型”存储结构
具有“一对多”关系的集合中的数据元素按照图 1的形式进行存储,整个存储形状在逻辑结构上看,类似于实际生活中倒着的树(图 2倒过来)。
常用专业词
结点:使用树结构存储的每一个数据元素都被称为“结点”。
父结点(双亲结点)、子结点和兄弟结点:对于图 1(A)中的结点 A、B、C、D 来说,A 是 B、C、D 结点的父结点(也称为“双亲结点”),而 B、C、D 都是 A 结点的子结点(也称“孩子结点”)。对于 B、C、D 来说,它们都有相同的父结点,所以它们互为兄弟结点。
树根结点(简称“根结点”):每一个非空树都有且只有一个被称为根的结点。图 1(A)中,结点 A 就是整棵树的根结点。
叶子结点:如果结点没有任何子结点,那么此结点称为叶子结点(叶结点)。例如图 1(A)中,结点 K、L、F、G、M、I、J 都是这棵树的叶子结点。
具体的树结构——二叉树
- 本身是有序树;
- 树中包含的各个节点的度不能超过 2,即只能是 0、1 或者 2;
可以总结三个规律(性质):
- 二叉树中,第层最多有 个结点。(1层为1,2层为2,3层为4,。。。)
- 如果二叉树的深度为 ,那么此二叉树最多有 个结点。
- 二叉树中,终端结点数(叶子结点数)为 n0,度为 2 的结点数为 n2,则 n0=n2+1。
未完待续