永发信息网

二叉树的三叉链表的parent域

答案:1  悬赏:0  手机版
解决时间 2021-02-06 12:17
  • 提问者网友:辞取
  • 2021-02-06 02:28
为什么parent在建树时不能和左右孩子一样将指针附上地址,需要另建函数
最佳答案
  • 五星知识达人网友:不如潦草
  • 2021-02-06 02:37
不太明白你的说法,可以给你个实际创建二叉树的代码例子。
  
template  
void BTree::create(BTNode*& p)  
{  
    T newData;  
    cin>>newData;  
    if ('#'==newData)  
    {  
        p=NULL;  
    }  
    else  
    {  
        p = new BTNode;  
        p->data = newData;  
        //注意,把左孩子链到父亲的左链域的操作是在调用这个函数体的函数体中进行,具体就是p->lchild = new BTNode;  
        create(p->lchild);  
        create(p->rchild);  
        //找到自己的儿子,并为其找到父亲  
        if (p->lchild!=NULL)  
        {  
            p->lchild->parent = p;  
        }  
        if (p->rchild!=NULL)  
        {  
            p->rchild->parent = p;  
        }  
    }  
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯