目录
1.二叉树类型定义
typedef struct BTNode{ //树数据类型
int elem;
struct BTNode *lchild,*rchild;
}BTNode,*BinTree;
2.递归方式创建二叉树
void CreateTree(BinTree &T){ //递归方式创建二叉树
int x;
scanf("%d",&x);
if(x==-1){ //-1代表该结点为空
T=NULL;
return;
}
else{
T=(BTNode*)malloc(sizeof(BTNode));
T->elem=x;
CreateTree(T->lchild);
CreateTree(T->rchild);
return;
}
}
3.递归方式前序遍历
void PreOrder(BinTree T){ //递归前序
if(T!=NULL){
printf("%3d",T->elem);
PreOrder(T->lchild);
PreOrder(T->rchild);
}
}
4.递归方式中序遍历
void InOrder(BinTree T){ //递归中序
if(T!=NULL){
InOrder(T->lchild);
printf("%3d",T->elem);
InOrder(T->rchild);
}
}