分析二叉树的相关概念及原理

子树:树是一个有限集合,子树则是该集合的子集。就像套娃一样,一棵树下面还包含着其子树。

比如,树T1 的子树为 树T2、T3、T4,树T2的子树为 T5、T6. 上图中还有许多子树没有标记出来。

结点(Node):一个结点包括一个数据元素和若干指向其子树分支。

比如,在树T1 中,结点A 包括一个数据元素A 和 三个指向其子树的分支。上图中共有 17 个结点。

根结点(Root):一颗树只有一个树根,这是常识。在数据结构中,“树根”即根节点。

比如,结点A 是树 T1 的根结点;结点C 是树T1 的子结点,是树 T3 的根结点。

度(Degree):一个结点拥有的子树数。

比如,结点A 的度为 3,结点G 的度为 3,结点H 的度为 1.

叶子(Leaf)/ 终端结点:度为 0 的结点被称为叶子结点,很形象吧。

比如,对于树 T1来说,结点F、I、K、L、M、N、O、P、Q 均为叶子。

分支结点 / 非终端结点:和叶子结点相对,即度不为 0 的结点。

内部结点:顾名思义,在树内部的结点,即不是根结点和叶子结点的结点。

孩子(Child)、双亲(Parent)、兄弟(Sibling)、堂兄弟、祖先、子孙这些概念和族谱上的相同。

比如,对于结点B 来说:结点A 是其双亲结点,结点E、F 是其孩子结点,结点C、D 是其兄弟结点,结点K 是其子孙结点。

层次(Level):从根结点开始,根为第一次,根的孩子为第二层,依次往下。

比如,结点K 在树 T1 中的层次为 4.

深度(Depth)/ 高度:指树的最大层次。

比如,树 T1 的深度为 4.

有序树:如果结点的各子树从左到右是有次序的、不能颠倒,则为有序树,否则为无序树。对于有序树的孩子来说,最左边的孩子称为第一个孩子,最右边的孩子称为最后一个孩子。

比如,如果树T1是一个有序树,则其根结点的第一个孩子为结点B,最后一个孩子为结点D.

1.2. 树的递归概念

前面已经介绍了树的轮廓和相关名词概念,为了回答什么是树这个问题,我们这里还需要介绍三种常见的树结构。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章