文章
74
粉丝
0
获赞
98
访问
9.0k
#include<bits/stdc++.h>
using namespace std;
typedef struct node{
char data;
struct node *lchild, *rchild;
}*BitTree;
// 创建二叉树
void CreateBitTree(BitTree &T){
char c; cin >> c;
if(c == '0') T = NULL;
else {
T = new node;
T->data = c;
CreateBitTree(T->lchild);
CreateBitTree(T->rchild);
}
}
// 先序遍历二叉树
void PreOrder(BitTree &T){
if(T != NULL){
cout << T->data << ' ';
PreOrder(T->lchild);
PreOrder(T->rchild);
}
}
// 中序遍历二叉树
void InOrder(BitTree &T){
if(T != NULL){
InOrder(T->lchild);
cout << T->data << ' ';
InOrder(T->rchild);
}
}
// 后序遍历二叉树
void PostOrder(BitTree &T){
if(T != NULL){
PostOrder(T->lchild);
PostOrder(T->rchild);
cout << T->data << ' ';
}
}
// 计算叶子节点个数
int Leaf(BitTree &T){
if(T == NULL) return 0;
else if(T->lchild == NULL && T->rchild == NULL) return 1;
else...
登录后发布评论
暂无评论,来抢沙发