井号法创建二叉树

井号法创建二叉树.C

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
//二叉树结点
typedef struct BINARYNODE
{
   
        char ch;
        struct BINARYNODE*lchild;
        struct BINARYNODE*rchild;
}BinaryNode;
void Recursion(BinaryNode*root)
{
   
        if (root == NULL)
        {
   
               return;
        }
        printf("%c",root->ch);
        Recursion(root->lchild);
        Recursion(root->rchild);
}
BinaryNode*CreateBinaryTree()
{
   
        fflush(stdin);//显示等待输入 刷新
        char ch;
        scanf("%c",&ch);
        
        BinaryNode*node;
        if (ch == '#')
        {
   
               node = NULL;
        }
        else
        {
   
               node = (BinaryNode*)malloc(sizeof(BinaryNode));
               node->ch = ch;
               node->lchild = CreateBinaryTree();
               node->rchild = CreateBinaryTree();
        }
        return node;
}
int main()
{
   
        //创建树
        BinaryNode*root = CreateBinaryTree();
        //打印树
        Recursion(root);
        return EXIT_SUCCESS;
}
数据结构与算法 文章被收录于专栏

本专栏收录数据结构与算法知识点

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 11:15
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务