//1,二叉树的定义
//2.利用先序遍历创建二叉树,同理,用该方法可以以中序遍历,后序遍历创建二叉树
typedef struct Node
{
DataType data;
struct Node *leftchild;
struct Node *rightchild;
}BiTnode,*BiTree;
//先序遍历
void CreateBiTree(BiTree *bt)
{
char ch;
ch = getchar();
if (ch == '\0') *bt = NULL;
else
{
*bt = (BiTree)malloc(sizeof(BiTnode));
(*bt)->data = ch;
CreateBiTree(&((*bt)->leftchild));
CreateBiTree(&((*bt)->rightchild));
}
}
//中序遍历创建二叉树树
void CreateBiTree(BiTree *bt)
{
char ch;
ch = getchar();
if (ch == '\0') *bt = NULL;
else
{
*bt = (BiTree)malloc(sizeof(BiTnode));
CreateBiTree(&((*bt)->leftchild));
(*bt)->data = ch;
CreateBiTree(&((*bt)->rightchild));
}
}
转载:https://blog.csdn.net/qq_41932111/article/details/102491369
查看评论