猿问

二叉树递归创建

#include<stdio.h>

#include<malloc.h>

typedef struct BTNode{
     int data;
     struct BTNode *Lchild,*Rchild;
}BiTnode,*Btree;
//递归算法创建二叉树
void CreatBTree(Btree tr){
    int ch;
    scanf("%d",&ch);
    if(ch==0)
    tr=NULL;
    else{
        tr=(Btree)malloc(sizeof(BiTnode));
        tr->data=ch;
        CreatBTree(tr->Lchild);
        CreatBtree(tr->Rchild);
    }
}

int main(){
    Btree bt=NULL;
    CreatBtree(bt);
return 0;
}
void CreatBtree(Btree tr)这句话怎么修改能使传过去的bt  再返回来创建好的树?


慕码人1088981
浏览 1289回答 3
3回答

Yexiaomo

&BT , 就是取地址  & 是取地址符号函数内部的 &(*T) , * 是指针的内容取出来,      那这个就是将 指针 T 指向的内容取出来, T 是指针的指针 也就是取出 指针的指针水平有限, 感觉有点解释不清, 建议你再去看看书,
随时随地看视频慕课网APP
我要回答