#ifndef _BTREE_H_
#define _BTREE_H_
typedef char BTDataType;
typedef struct BinaryTreeNode{
BTDataType data;
struct BinaryTreeNode* lchild;
struct BinaryTreeNode* rchild;
}BTNode;
BTNode *BinaryTreeCreate(BTDataType *src);
#endif/*_BTREE_H_*/
#include"BTree.h"
#include<stdio.h>
#include<stdlib.h>
BTNode *BinaryTreeCreate(BTDataType *src)
{
static int s_n = 0;
if (src[s_n]=='#')
{
s_n++;
return NULL;
}
BTNode *cur = (BTNode*)malloc(sizeof(BTNode));
cur->data = src[s_n];
s_n++;
cur->lchild = BinaryTreeCreate(src);
cur->rchild = BinaryTreeCreate(src);
return cur;
}
#include"BTree.h"
int main()
{
BTNode *root = BinaryTreeCreate("ABD#GI##J###CE#HK###F##");
return 0;
}