二叉树

本文详细介绍了树的基本概念,包括结点的度、叶子结点、分枝结点、无序树与完全二叉树等,并深入探讨了二叉树的三种遍历方式:先序遍历、中序遍历和后序遍历,通过实例解释了每种遍历的特点。

基本概念

  • 结点的度:结点子树的个数,树的度是树中最大的结点度。
  • 叶子结点:也叫终端结点,是度为 0 的结点;分枝结点是度不为0的结点。
  • 无序树:不考虑子树的顺序,有序树就是不能交换子节点顺序
  • 完全二叉树:与相同深度的满树编号相同(只有最后一层不满,且都靠左)
    在这里插入图片描述

在这里插入图片描述


  • 普通的树可以通过“左孩子,右兄弟”的结构转化成二叉树

在这里插入图片描述


二叉树的遍历

  • 二叉树的三种遍历方式(不管哪种都是左在右的前面先中后指的是当前访问的节点先于子树出现还是后于子树出现):
  1. 先序遍历:根左右

(1)A是树的根,先访问A(根),再到(B)左, 因为B是一个子树,同样遵循这个规则
(2)先访问B(根),再访问左,没有,再访问C(右),C是一个子树,同样遵循这个规则
(3)先访问C(根), 再D(左),再E(右)
(4)返回A,到F,F是一个子树,先访问F(根),左没有,到G
(5)G同样是子树,先G(根),再到H(左),结束


输出顺序:ABCDEFGH     可以看出根都先于子树





  1. 中序遍历:左根右

(1)A是一个树的跟,先访问B,B又是一个树的根,
(2)访问左(没有),接着B(根),再到C(右),C又是一个树的根
(3)先访问D(左),再访问C(根),再访问E(右)
(4)再到A(总根),再到F,F又是子树
(5)F的左没有,直接就是F(根),再到右,G也是一子树
(6)先H(左),再G(根)

输出顺序:BDCEAFHG    可以看出根都在子树中间





  1. 后续遍历:左右根

(1)A是一个树的跟,先访问B,B也是一个树的根
(2)B没有左,到C(右),C也是子树
(3)先D(左),再访问E(右),再到C(根)
(4)再到上一个根(B)
(5)再到总树的右F,F是一颗树
(6)先左(没有),再右(G)是一棵树
(7)G这个树,先H(左),再右(没有),再G(根)
(8)再到上一个树F,右输出完了,剩下F(根)
(9)最后剩下根A(总根)

输出顺序:DECBHGFA    可以看出根都在子树后面



如何确定一棵树?

  1. 通过中序先序遍历可以确定一颗树
  2. 通过中序后序遍历可以确定一棵树
  3. 通过先序后序遍历不能确定一棵树
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值