| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 620 人关注过本帖
标题:帮忙讲解一下二叉树递归函数的执行过程?
只看楼主 加入收藏
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
结帖率:38.67%
收藏
 问题点数:0 回复次数:2 
帮忙讲解一下二叉树递归函数的执行过程?
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "malloc.h"

typedef struct BiTNode
{
char data;
struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;

BiTree CreateBiTree(BiTree &T)
{
    char p;
    scanf("%c",&p);
    if(p==' ')
        T=NULL;
    else
    {
        T=(BiTNode *)malloc(sizeof(BiTNode));
        T->data=p;
        CreateBiTree(T->lchild);
        CreateBiTree(T->rchild);
    }
    return (T);
}

void PreOrder(BiTree &T)
{
    if(T)
    {
        printf("%c",T->data);
        PreOrder(T->lchild);
        PreOrder(T->rchild);
    }
}
void InOrder(BiTree &T)//这个中序是如何遍历二叉树,函数是如何执行的?
{
    if(T)
    {
        InOrder(T->lchild);
        printf("%c",T->data);
        InOrder(T->rchild);

    }
}
void PostOrder(BiTree &T)//这个后序呢?
{
    if(T)
    {
        PostOrder(T->lchild);
        PostOrder(T->rchild);
        print("%c",T->data);
    }
}

int main(int argc, char* argv[])
{
    BiTree Ta;
    CreateBiTree(Ta);
    printf("先序遍历:");
    PreOrder(Ta);
    printf("\n");
    printf("中序遍历:");
    printf("\n");
    InOrder(Ta);
    printf("\n");
    printf("后序遍历:");
    printf("\n");
    PostOrder(Ta);
    printf("\n");
    return 0;
}
搜索更多相关主题的帖子: 二叉树 递归 函数 讲解 
2010-05-29 12:14
实数虚数
Rank: 2
来 自:江西抚州
等 级:论坛游民
帖 子:27
专家分:37
注 册:2010-5-17
收藏
得分:0 
前、中、后序的递归遍历只是交换根节点与及左右孩子节点的顺序,就好比是把大事化小,把每一次遍历看做只有三个节点,然后依次往下推,知道为空,才返回。
2010-05-29 15:00
henji
Rank: 1
等 级:新手上路
帖 子:227
专家分:0
注 册:2009-4-19
收藏
得分:0 
回复 2楼 实数虚数
void PostOrder(BiTree &T{
    if(T)
    {
        PostOrder(T->lchild);
        PostOrder(T->rchild);
        print("%c",T->data);//这个print是如何输出结点的呢?是执行t->child函数一次就输出print()语句一次吗?
    }
}
2010-05-29 15:33
快速回复:帮忙讲解一下二叉树递归函数的执行过程?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011918 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved