二叉树为空意味着二叉树_数据结构:树和二叉树定义和术语

1、树的对象

具有相同特性的数据元素的集合

2、关系

如果没有对象叫做空树

否则:

在存在唯一的成为根的数据元素root

当元素个数大于1的时候,其他节点可以

分为互不相交的树,成为根root的子树

a

b      c    d

e f     g

i   j

b c d 叫做a为root节点的子树

e f 叫做以b为root节点的子树

以此类推

3、相关术语

结点:数据元素+若干指向子树的分支

如上数据元素a+指向子树b c d的指针叫做结点

结点的度:分支的个数 比如a的度就为3

树的度:所有结点的度的最大值

叶子结点:度为0的结点

分支结点:度大约0的结点,也就是叶子结点以外的

特殊的就是root根结点

从根到结点的路径:从根到结点所经历的分支和结点构成

孩子结点:子树的根对于树的根叫做孩子结点

双亲结点:树的根对于子树的根叫做双亲结点

兄弟结点:有相同根的子树叫做兄弟结点

祖先节点:从根到结点之间的全部节点叫做祖先节点

子孙节点:一个根下的所有的节点叫做子孙节点

结点的层次:角色根结点的层次为1,第L层的节点的子树

根结点的层次是L+1层

树的深度:树中叶子节点所在的最大层次

如上例子:第3层的i的层次为3+1=4层&#x

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来给你讲解一下二叉树的基础知识和原理。 二叉树是一种数据结构,每个节点最多只有两个子节点。这两个子节点被称为左子节点和右子节点。二叉树的每个节点都包含一个值和一个指向其左子节点和右子节点的指针。 二叉树可以用来表示有序的数据集合。在二叉搜索中,每个节点的左子节点都小于该节点的值,而右子节点都大于该节点的值。这使得二叉搜索成为了一种非常有效的数据结构,用于搜索和排序操作。 下面是一些二叉树的基本术语: - 根节点:二叉树的顶部节点,没有父节点。 - 父节点:一个节点连接其子节点的节点。 - 子节点:一个节点通过其父节点连接到其他节点。 - 叶子节点没有子节点的节点。 - 子:一个节点及其子孙节点构成的。 - 节点深度:根节点到该节点的路径长度,根节点的深度为0。 - 节点高度:该节点到叶子节点的最长路径长度,叶子节点的高度为0。 - 的深度:根节点到最深叶子节点的路径长度。 接下来,我们来看一下二叉树的遍历方式。 1. 前序遍历 前序遍历先访问根节点,然后依次遍历左子和右子。 伪代码: ``` 1. 如果 2. 访问根节点 3. 前序遍历左子 4. 前序遍历右子 ``` 2. 中序遍历 中序遍历先遍历左子,然后访问根节点,最后遍历右子。 伪代码: ``` 1. 如果 2. 中序遍历左子 3. 访问根节点 4. 中序遍历右子 ``` 3. 后序遍历 后序遍历先遍历左子,然后遍历右子,最后访问根节点。 伪代码: ``` 1. 如果 2. 后序遍历左子 3. 后序遍历右子 4. 访问根节点 ``` 最后,我们再来看一下二叉树的插入和删除操作。 1. 插入操作 插入操作需要先找到要插入节点的位置。如果该节点比当前节点的值小,则在左子中插入;如果该节点比当前节点的值大,则在右子中插入。当找到插入位置时,将新节点插入到该位置。 伪代码: ``` 1. 如果为空,则将新节点作为根节点。 2. 如果新节点的值小于当前节点的值,则在左子中插入新节点。 3. 如果新节点的值大于当前节点的值,则在右子中插入新节点。 ``` 2. 删除操作 删除操作分为三种情况: - 要删除的节点没有子节点。直接删除该节点即可。 - 要删除的节点只有一个子节点。将该子节点替换该节点。 - 要删除的节点有两个子节点。找到该节点的后继节点(即中序遍历后该节点的下一个节点),将其值替换该节点的值,然后删除后继节点。 伪代码: ``` 1. 如果要删除的节点没有子节点,则直接删除该节点。 2. 如果要删除的节点只有一个子节点,则用该子节点替换该节点。 3. 如果要删除的节点有两个子节点,则找到该节点的后继节点,将其值替换该节点的值,然后删除后继节点。 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值