数据结构(13)---二叉树之链式结构(前序遍历, 中序遍历, 后序遍历, 层序遍历)

Posted 李憨憨_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构(13)---二叉树之链式结构(前序遍历, 中序遍历, 后序遍历, 层序遍历)相关的知识,希望对你有一定的参考价值。

二叉树之链式结构



前言

之前我们介绍了二叉树的顺序存储结构, 顺序存储相对特殊, 适用范围相对较窄, 仅适用于完全二叉树的存储, 而链式存储较之有所不同, 它的适用范围更广, 它可适用于所有二叉树的存储;
这里我们主要学习的是二叉树的遍历


二叉树链式结构的创建

二叉树的遍历

二叉树的遍历是指不重复地访问二叉树中所有结点,主要指非空二叉树。二叉树的遍历分为深度优先遍历(先序遍历、中序遍历、后序遍历)和广度优先遍历 (层次遍历)

主要根据根节点的访问位置, 将二叉树的遍历方式分为, 前序遍历, 中序遍历和后序遍历
简单练习

二叉树的前序遍历

前序遍历(Preorder Traversal 亦称先序遍历)——访问根结点的操作发生在遍历其左右子树之前。
根节点, 左子树, 右子树

递归方式的前序遍历

二叉树的中序遍历

中序遍历(Inorder Traversal)——访问根结点的操作发生在遍历其左右子树之中(间)。
左子树, 根节点, 右子树

递归方式的中序遍历

二叉树的后序遍历

后序遍历(Postorder Traversal)——访问根结点的操作发生在遍历其左右子树之后。
左子树, 右子树, 根节点

递归方式的后序遍历

二叉树的层序遍历


计算二叉树中节点的个数

计算叶子节点的个数

第k层节点个数

查找某一个节点

二叉树的销毁

以上是关于数据结构(13)---二叉树之链式结构(前序遍历, 中序遍历, 后序遍历, 层序遍历)的主要内容,如果未能解决你的问题,请参考以下文章

数据结构C语言版——链式二叉树的基本操作实现

数据结构C语言版——链式二叉树的基本操作实现

DS二叉树——二叉树之父子结点

DS二叉树--二叉树之父子结点

二叉树之二叉搜索树的基本操作实现

数据结构二叉树(下)