美文网首页
二叉树的构造,遍历

二叉树的构造,遍历

作者: 魂梦云边 | 来源:发表于2017-04-25 19:54 被阅读0次
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

struct Tree
{
    char date;
    struct Tree *lchild, *rchild;
};

int CreateTree(struct Tree *&T)
{
    char ch;
    scanf("%c", &ch);
    if(ch=='*')
        T=NULL;
    else{
        T=(struct Tree *)malloc(sizeof(struct Tree));
        T->date=ch;
        CreateTree(T->lchild);
        CreateTree(T->rchild);
    }
    return 0;
}

int PreOrder(struct Tree *T)
{
    if(T){
        printf("%c ", T->date);
        PreOrder(T->lchild);
        PreOrder(T->rchild);
    }
    return 0;
}

int InOrder(struct Tree *T)
{
    if(T){
        InOrder(T->lchild);
        printf("%c ", T->date);
        InOrder(T->rchild);
    }
    return 0;
}


int PostOrder(struct Tree *T)
{
    if(T){  
        PostOrder(T->lchild);
        PostOrder(T->rchild);
        printf("%c ", T->date);
    }
    return 0;
}

int main()
{
    struct Tree *T;
    CreateTree(T);
    
    PreOrder(T);
    printf("\n");
    
    InOrder(T);
    printf("\n");
    
    PostOrder(T);
    printf("\n");
    return 0;
}

Paste_Image.png

相关文章

网友评论

      本文标题:二叉树的构造,遍历

      本文链接:https://www.haomeiwen.com/subject/eccbzttx.html