注册 登录
编程论坛 数据结构与算法

关于二叉树的递归操作,该如何进行啊,没思路啊,求高手指点。。。

smile康师傅 发布于 2012-06-17 19:07, 731 次点击
求教这两个程序:
typedef int status;
typedef int elemtype;
typedef struct btnode
{
    elemtype data;
    struct btnode *lchild;
    struct btnode *rchild;
}btnode,*bitree;
1。status getlevel(bitree T,elemtype h)//求某结点所在的层次//
{
    int height;
    if(T->data==h)
        return height;
    else
    {
        height=getlevel(T,h)+1;
        height=getlevel(T,h)+1;
    }
},运行错误,不过我不知道错哪儿,求指教。。。
2。bitree parent(bitree T,bitree p,elemtype e)//求某一结点的双亲//
{
        if(T&&T->data==e)
            return p;
        else if(T->lchild)
            return parent(T->lchild,T,e);
        else
            return parent(T->rchild,T,e);
}T为这个二叉树,p为所输入的结点的双亲的指针,返回p,运行错误,求高手指教。。。
3。请问二叉树递归的原理(麻烦用上面两个程序讲解一下啊,谢谢啦),到底是如何来进行递归调用的,递归时需要注意那几点?递归是否存在前提?
4。二叉树中的递归过程到底该如何推导,编程是否应该用其递归原理来实现
5。最后一点,该如何在二叉树中找到递归的突破口,麻烦推荐一两本介绍递归的书啊,急急急。。。。
谢谢各位啦,都来指点一下啊。。。。
1 回复
#2
peach54602012-07-12 13:39
看看数据结构这本书吧...
1