-->
当前位置:首页 > 题库 > 正文内容

程序填空题:扩展的先序遍历序列创建二叉树-使用参数返回

Luz4年前 (2021-05-10)题库3780
以扩展的先序遍历建立二叉树,根结点的地址通过参数返回。
例如

![二叉树.png](~/c43e8ca5-879e-4590-ac0d-261cd149e54e.png)


输入AB#DF##G##C##,建立二叉树 ,输出该二叉树的先序遍历序列ABDFGC。

```
#include
#include

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

void CreatBinTree(BiTree *T);
void preorder( BiTree T );

int main()
{
BiTree T;
CreatBinTree(&T);
preorder( T );
return 0;
}
void preorder( BiTree T )
{
if(T)
{
printf("%c",T->data);
preorder(T->lchild);
preorder(T->rchild);
}
}
void CreatBinTree(BiTree *T)
{
char ch;
scanf("%c",&ch);
if(ch=='#') @@[*T=NULL](2);
else
{
@@[*T](2)=(BiTree)malloc(sizeof(BiTNode));
(*T)->data=ch;
CreatBinTree( @@[&(*T)->lchild](2));
CreatBinTree( @@[&(*T)->rchild](2));
}
}
```






答案:
第1空:*T=NULL

第2空:*T

第3空:&(*T)->lchild

第4空:&(*T)->rchild

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。