常用数据结构之二叉树及树的四种遍历方式

本文介绍了树的概念及其相关术语,包括节点、父节点、子节点、根节点、叶子节点等。接着讲解了二叉树的定义,强调其有序性,并区分了满二叉树与完全二叉树。文章通过Python实现展示了二叉树的构造,以及前序遍历、中序遍历、后序遍历和层次遍历这四种遍历方式。
摘要由CSDN通过智能技术生成

1.树

         我们选择一种数据结构,不仅要能存储数据,而且要能体现数据之间的关系。目前数据主要有是三种关系一对一、一对多、多对多;之前我们讨论了线性表(数组、链表、栈、队列),其中的元素具有一对一的关系,通过元素之间左右相连来表达数据。为了表达具有一对多关系的数据,我们引进了树的概念。掌握树的关键就在于掌握这种不断延伸的一对多的关系。

                                               

          下面我们介绍几种约定俗称的概念:

                节点:树中的每一个元素称为节点

                父节点(双亲节点):产生其它节点的节点(即一对多中的一),其往往是一种局部相对的关系,如图A、B、C、D中的A就是B、C、D的父节点

                子节点:由其它节点产生的节点(即一对多中的多),这也是一种局部相对关系,如图A、B、C、D中的B、C、D就是A的子节点

                根节点:一棵树中最顶层节点(没有任何的父节点),这是一种绝对的关系,相对于整棵树而言。如图中的A。

                叶子节点:没有任何子节点的节点,这也是一种绝对的关系,相对于整棵树而言。如图中的K、L、F、G、M、I、J

                子树:大树中所包含的小树,比如上面的树中B、E、F、K、L也构成了一棵树,称为子树。一棵树往往由多棵子树构成。

                 空树:没有任何节点的树

                 :一个节点所拥有的子树数量,称为节点的度。即节点对应的分支树。各接节点中最大的度,称为树的度。

                 层次:从根节点到最远子节点,经过的节点数量。比如上图中的A、B、E、K为最远路径,该树的层次为4

                 有序树和无序树:兄弟节点之间是有顺序,称为有序树。否则是无序树。如上面的图就是一棵有序树。请注意这里的有序并不表示兄弟节点间的大小关系,更多表示的是这种树是对兄弟元素间顺序敏感</

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值