二叉树链表存储类型定义代码?
二叉树是n(n>=0)个结点的有限集,它或为空树(n=0),或由一个根结点和两棵分别称为左子树和右子树的互不相交的二叉树构成(递归定义)特点:
1)每个结点至多有二棵子树(即不存在度大于2的结点)2)二叉树的子树有左、右之分,且其次序不能任意颠倒
二叉树的二叉链表存储结构的定义
typedef struct BiTNode { // 结点结构 TElemType data; struct BiTNode *lchild, *rchild; // 左右孩子指针 } BiTNode, *BiTree; 1234512345
构建二叉树
//构建二叉树 void CreateBiTree(BiTree &T) {//按先序次序输入二叉树中结点的值,创建二叉链表表示的二叉树T TElemType n; scanf("%d",&n); if(n==0)//递归结束条件 { T=NULL; } else { T = new BiTNode;//生成根节点 T->data = n; CreateBiTree(T->lchild);//递归创建左子树 CreateBiTree(T->rchild);//递归创建右子树 } }