【数据结构】二叉树先序、中序、后序及层次四种遍历

一、先序遍历

        先序遍历从一棵二叉树根节点为起点,沿着二叉树走,每次遇到一个结点时,先读取这个结点,然后读取其左子树的结点,再读取其右子树的结点。在这过程中,遇上每一个结点都按照:根-》左孩子-》右孩子的顺序,直到全部结点遍历完。路上遇到的元素顺序,就是先序遍历的结果。

二、中序遍历

        中序遍历可以看成,遇上每一个结点都按照:左孩子-》根-》右孩子的顺序,直到全部结点遍历完。路上遇到的元素顺序,就是中序遍历的结果。

三、中序遍历

        后序遍历可以看成,遇上每一个结点都按照:左孩子-》右孩子-》根的顺序,直到全部结点遍历完。路上遇到的元素顺序,就是后序遍历的结果。

四、层次遍历

        层次遍历很好理解,就是从根节点开始,一层一层,从上到下,每层从左到右,依次读取结点值。

五、代码

#include <time.h>
#include"BTree.h"

typedef int BTDataType;
//结点
typedef struct BinaryTreeNode
{
	BTDataType data;
	struct BinaryTreeNode* left;
	struct BinaryTreeNode* right;
}BTNode;

//前序遍历,递归算法
void PrevOrder(BTNode* root) {
	if (root == NULL) {
		printf("NULL ");
		return;
	}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值