我是靠谱客的博主 落后手机,这篇文章主要介绍数据结构与算法--二叉树的遍历以及实现先序遍历,现在分享给大家,希望可以做个参考。

二叉树的遍历

二叉树的遍历方法有三种:先序遍历,中序遍历和后序遍历

先序遍历

先序遍历的方法:如果二叉树为空则返回空,否则先访问根结点,然后前序遍历左子树,在先序遍历右子树
基本算法:

void PreOrderTraverse(BiTree T){
    if(T==NULL){
        return;
    }
    printf("%c",T->data);
    PostOrderTraverse(T->lchild);//先遍历左子树
    PostOrderTraverse(T->rchild);//在遍历右子树

中序遍历

中序遍历的方法:先中序遍历根结点的左子树,在访问根结点,在中序遍历根结点的右子树,
基本算法

void InOrderTraverse(BiTree T){
    if(T==NULL){
        return;
    }
    PostOrderTraverse(T->rchild);//在遍历右子树
    PostOrderTraverse(T->lchild);//先遍历左子树
   
    printf("%c",T->data);

后序遍历

基本算法:先后序遍历访问根结点的左子树,在后序遍历根结点的右子树,最后访问根结点

void PostOrderTraverse(BiTree T){
    if(T==NULL){
        return;
    }
    PostOrderTraverse(T->lchild);//先遍历左子树
    PostOrderTraverse(T->rchild);//在遍历右子树
    printf("%c",T->data);
}

例子

在这里插入图片描述

关键还是递归的调用

最后

以上就是落后手机最近收集整理的关于数据结构与算法--二叉树的遍历以及实现先序遍历的全部内容,更多相关数据结构与算法--二叉树内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(95)

评论列表共有 0 条评论

立即
投稿
返回
顶部