2个回答
展开全部
/*二叉树的二叉链表节点结构定义*/
typedef int TElemType; //ElemType类型根据实际情况而定,这里假设为int
typedef struct BiNode /*节点结构*/
{
TElemType data; /*节点数据*/
struct BiNode *lchild, *rchild; /*左右孩子指针*/
}BiTNode, *BiTree;
/*二叉树的建立*/
/*按前序输入二叉树中的节点值(一个字符)*/
/*#表示空树,构造二叉链表表示二叉树T。*/
void CreatBiTree(BiTree *T)
{
TElemType ch;
scanf("%c", &ch);
if (ch == '#')
{
*T = NULL;
}
else
{
*T = (BiTree)malloc(sizeof(BiTNode)); /*注意malloc()的用法*/
if (!*T)
exit(OVERFLOW); /*注意exit()的用法*/
(*T)->data = ch; /*生成根节点*/
CreatBiTree(&(*T)->lchild); /*构造左子树*/
CreatBiTree(&(*T)->rchild); /*构造右子树*/
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询