当前位置:   article > 正文

C语言 二叉树的遍历(前中后序递归与迭代遍历,层序迭代遍历)_后序递归遍历二叉树

后序递归遍历二叉树

前言

四种基本的遍历思想

  • 先(前)序遍历:根结点 ---> 左子树 ---> 右子树
  • 中序遍历:左子树---> 根结点 ---> 右子树
  • 后序遍历:左子树 ---> 右子树 ---> 根结点
  • 层次遍历:仅仅需按层次遍历就可以

如图所示二叉树

 先序遍历结果为:1 2 4 5 3 6

中序遍历结果为:4 2 5 1 6 3

后序遍历结果为:4 5 2 6 3 1

层序遍历结果为:1 2 3 4 5 6

递归的实现就是每一次递归调用都会把函数的局部变量、参数值和返回地址等压入调用栈中,然后递归返回的时候,从栈顶弹出上一次递归的各项参数,所以这就是递归为什么可以返回上一层位置的原因。

而迭代法遍历的原理就是模拟递归。

目录

四种基本的遍历思想

二叉树存储结构

 一、先序遍历

递归遍历

迭代遍历 

二、中序遍历

 递归遍历

 迭代遍历

三、后序遍历

 递归遍历

迭代遍历 

四、层序遍历


二叉树存储结构

  1. typedef struct {
  2. int data;//数据域
  3. struct BiTNode* left, * right;//左子树右子树
  4. }BiTNode, * BiTree;

 一、先序遍历

数据结构——二叉树先序、中序、后序及层次四种遍历(C语言版)_中序遍历_正弦定理的博客-CSDN博客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/531375

推荐阅读
相关标签