C语言数据结构——二叉树

链式存储

定义结构体

typedef struct tree
{
    char data;
    struct tree *Lchild,*Rchild;
}Tree;

创建二叉树(采用先序遍历创建,也可采用中序或后序遍历创建)

1.扫描字符序列,输入字符ch

2.如果ch是一个'#'字符,则表明该二叉树为空树,即T为NULL;否则执行以下操作:

  • 申请一个节点空间
  • 将ch赋给T->data
  • 递归创建T的左子树
  • 递归创建T的右子树
void CreateTree(Tree *&T)   //先序遍历创建二叉树
{
    char ch;
    scanf(" %c",&ch);       //输入数据
    if(ch=='#')
        T=NULL; 

你可能感兴趣的:(C语言与数据结构,数据结构)