关于二叉树的递归方法建立二叉树,这个过程是怎么样实现的?
1个回答
展开全部
BiTree
CreateBiTree()
{
char
p;BiTree
T;
scanf("%c",&p);
if(p=='
')
T=NULL;
else
{
T=(BiTNode
*)malloc(sizeof(BiTNode));
T->data=p;
T->lchild=CreateBiTree();
T->rchild=CreateBiTree();
}
return
(T);
}
就拿这个来说吧,先创建根节点,然后进入递归创建左子树,直到输入的为空格停止创建,再创建这个节点根节点的右子树,在创建这个右子树的左子,一直这样分析下去,不懂联系
CreateBiTree()
{
char
p;BiTree
T;
scanf("%c",&p);
if(p=='
')
T=NULL;
else
{
T=(BiTNode
*)malloc(sizeof(BiTNode));
T->data=p;
T->lchild=CreateBiTree();
T->rchild=CreateBiTree();
}
return
(T);
}
就拿这个来说吧,先创建根节点,然后进入递归创建左子树,直到输入的为空格停止创建,再创建这个节点根节点的右子树,在创建这个右子树的左子,一直这样分析下去,不懂联系
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询