数据结构:通过链表实现二叉树的构建
发布时间
阅读量:
阅读量
采用链表结构存储二叉树
缺陷:存在指针资源的冗余占用。
二叉树结构体
typedef char TElemType;
typedef struct BiTree{
TElemType data;
struct BiTree *Lchild,*Rchild;
}*BiTree,BiTNode;
每个节点用于存储数据,并包含其左子节点与右子节点对应的数据信息。
二叉树的构建
通过前序遍历的方式输入二叉树结构,对于缺失的节点则以#符号进行补充
需注意传入的参数应为指向指针的指针类型,以此实现对指针值的修改
在C++语言中,也可以采用引用的方式作为替代方案
void Create_Bitree(BiTree *T){ //前序输入
TElemType data;
scanf("%c",&data);
if(data == '#') T = NULL;
else{
if(!(*T = (BiTree)malloc(sizeof(BiTNode)))) exit(1);
(*T)->data = data;
Create_Bitree(&(*T)->Lchild);
Create_Bi
全部评论 (0)
还没有任何评论哟~
