#include <iostream>
using namespace std;
typedef char ElemType;
typedef struct BiTNode {
ElemType data;
struct BiTNode *lchild, *rchild;
} BiTNode, *BiTree;
//前序建立二叉树
void createBiTree(BiTree &T) {
ElemType ch;
cin.get(ch);
if(ch == ' ')
T = NULL;
else {
T = new BiTNode;
T->data = ch;
createBiTree(T->lchild);
createBiTree(T->rchild);
}
}
//遍历二叉树
void preOrder(BiTree T) {
if(T != NULL) {
cout<<T->data<<" ";
preOrder(T->lchild);
preOrder(T->rchild);
}
}
void inOrder(BiTree T) {
if(T != NULL) {
preOrder(T->lchild);
cout<<T->data<<" ";
preOrder(T->rchild);
}
}
void postOrder(BiTree T) {
if(T != NULL) {
postOrder(T->lchild);
postOrder(T->rchild);
cout<<T->data<<" ";
}
}
int main() {
BiTree T;
createBiTree(T);
postOrder(T);
return 0;
}
二叉树的建立与遍历
最新推荐文章于 2023-04-14 20:37:55 发布