(十一)数据结构-线索二叉树

线索二叉树是(物理)结构=存储结构
解析:二叉树是一种逻辑结构,但是线索二叉树加上线索后的链表结构,即它是二叉树在计算机内部的一种存储结构,所以是一种物理结构
注意:无逻辑和存储结构这一说法,它其实就是“物理结构”,但是没有这个说法!

一、引入线索二叉树目的

引入线索二叉树是为了查找结点前驱和后继的速度,知道了"前驱"、"后继"信息,就可以把二叉树看作一个链表结构,从而可以像遍历链表一样遍历二叉树

二、线索二叉树的规定

规定:若无左子树,令lchild指向其前继结点;
若无右子树,令rchild指向其后继结点;
另外还需要增加两个标志域指向左(右)孩子还是指向前驱(后继)
在这里插入图片描述
标识域含义如下:
在这里插入图片描述
以这种结点结构构成的二叉链表作为二叉树的存储结构,成为线索链表;
其中指向结点和后继的指针成为线索,加上线索的二叉树成为线索二叉树;

三、线索二叉树的构建

步骤:

  1. 求遍历
  2. 看空域
  3. 连线-左右
    举例说明:
    先序线索二叉树的构建
    1.首先我们将此二叉树的的先序遍历此二叉树得到结果
    ABCDE
    在这里插入图片描述
    2.从二叉树我们可以看出A连接了BE,因此A没有空域,我们写0;
    B也连接了CD,因此没有空域,我们写0;
    C没有连接子树,因为我们是二叉树,所以有两个空域
    3.A、B没有空狱,不需要连线,C有两个空域,从遍历结果可以看到C左边是A,右边是C,所以连线连左右边
    4.E有两个空域,但是只有左边,所以E的右边指向null

在这里插入图片描述
在这里插入图片描述
中序线索二叉树的构建
方法都是一样的,下面直接放结果:
在这里插入图片描述
后序线索二叉树的构建
在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值