二叉树遍历的四种方式(先序、中序、后序、层序)

本文详细介绍了二叉树的四种遍历方式:先序遍历(访问根节点->左子树->右子树)、中序遍历(左子树->根节点->右子树)、后序遍历(左子树->右子树->根节点)和层次遍历(按层次从左到右访问)。同时,阐述了如何根据遍历序列构造二叉树,如先序和中序序列、后序和中序序列、层序和中序序列能唯一确定一棵二叉树。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遍历方式

有四种遍历方式:先序遍历、中序遍历、后序遍历、层次遍历

先序遍历

规则:
①访问根节点
②先序遍历左子树
③先序遍历右子树

先序递归遍历
void preOrder(BiTree B){
    if(B != NULL){
        printf("先序访问结点 %c\n",B->data);
        preOrder(B->lchild);
        preOrder(B->rchild);
    }
}

中序遍历

规则:
①中序遍历左子树
②访问根节点
③中序遍历右子树

中序递归遍历
void InOrder(BiTree B){
    if(B != NULL){
        InOrder(B->lchild);
        printf("中序访问结点 %c\n",B->data);
        InOrder(B->rchild);
    }
}

后序遍历

规则:
①后序遍历左子树
②后序遍历右子树
③访问根节点

后序递归遍历
void PostOrder(BiTree B){
    if(B != NULL){
        PostOrder(B->lchild);
        PostOrder(B->rchild);
        printf(&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值