数据结构---创建二叉树

二叉树创建:
1.是否可以用二叉树遍历的方式来创建二叉树?


 1. 先序遍历
 2. 先序遍历不能唯一确定1二叉树的结构,两颗不同的二叉树却可能有相同的先根序列。原因是:二叉树中,可能有其左指针和/或右指针为空的结点,先序遍历不包含这方面的信息,由此需要在先序遍历中加入特殊的符号以表示空指针的位置,这里不妨使用“#”号表示空指针位置。
 3. 递归算法:create bin tree (简记为CBT)
 4. 以根指针t为输入参数,以包含空指针信息的先根序列为输入序列。当输入“#”字符时,将其初始化为一个空指针;否则生成一个新结点,并初始化其父结点的左右指针。

算法 CBT(tostop 。 t)
构造以结点t为根的二叉树;tostop=“#”
CBT1.【读数据】
read (ch) //顺序读入序列一个符号
CBT2.【ch= tostop?]
if ch = tostop then (t<---nullptr /return )
else
t<=avail .
data(t)<--ch.)
CBT3.[构造左子树】
CBT (tostop.left(t)).
CBT4.[构造右子树]
CBT (tostop. right(t)).


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不停---

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值