文章
19
粉丝
0
获赞
147
访问
3.6k
树里面大量运用指针,基础不好的同学可能难以理解,结合代码注释讲一讲
#include<bits/stdc++.h>
using namespace std;
typedef struct node{//定义结构体node,并且将这种结构体命名为Node,指向它的指针命名为BiTree
char data;
struct node *lchild;
struct node *rchild;
}Node,*BiTree;
BiTree CreateBiTree(){//建立一颗二叉树,输入为先序序列,基础的递归思想。我需要的返回值是指向根节点的指针,所以数据类型是BiTree
char c;
cin >> c;
if(c == '0') return nullptr;//c++11中可以用nullptr这种形式表示空指针
else{
BiTree t = new Node;
t->data = c;
t->lchild = CreateBiTree();
t->rchild = CreateBiTree();
return t;
}
}
void PreOreder(BiTree T){//先序遍历,注意T不为空不能少,不然指向空节点后回不来,会继续调用T->data出错。
if(T != nullp...
登录后发布评论
暂无评论,来抢沙发