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

概述

二叉树的遍历

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

先序遍历

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

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);
}

例子

在这里插入图片描述

关键还是递归的调用

最后

以上就是落后手机为你收集整理的数据结构与算法--二叉树的遍历以及实现先序遍历的全部内容,希望文章能够帮你解决数据结构与算法--二叉树的遍历以及实现先序遍历所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部