二叉树的建立

 

定义树的结构:

1 typedef int ElemType;
2 
3 struct BinaryTreeNode
4 {
5     ElemType m_nValue;//结点值
6     BinaryTreeNode *m_pLeft;//左节点地址
7     BinaryTreeNode *m_pRight;//右节点地址
8 };

将二叉树构建成一个完整的,若不存在的节点用字符'#'代替,

 1 BinaryTreeNode * CreateTree(BinaryTreeNode *bTree)
 2 {
 3     int input;
 4     scanf("%d",&input);            //按先序建立二叉树
 5     if(input == ‘#’)
 6     {
 7         bTree = NULL;    //置为NULL后结束
 8         return bTree;    
 9     }
10     bTree = (BinaryTreeNode *)malloc(sizeof(BinaryTreeNode));
11     bTree ->m_nValue = input;
12     bTree->m_pLeft = CreateTree(bTree->m_pLeft);
13     bTree->m_pRight = CreateTree(bTree->m_pRight);
14     return bTree;
15 }

 

转载于:https://www.cnblogs.com/LaplaceAkuir/p/5774620.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值