链式存储结构
#include<iostream>
using namespace std;
typedef struct BiNode {
BiNode * lchild;
BiNode * rchild;
int data;
}BiNode,*pnode;
void createBitree(pnode &T) {
char c;
cin >> c;
if (c == '#') {
T = NULL;
}
else {
T =(pnode)malloc(sizeof(BiNode));
T->data = c;
createBitree(T->lchild);
createBitree(T->rchild);
}
}
void preTraverse(pnode T) {
if (T != NULL) {
cout << (int)(T->data)-48 << endl;
preTraverse(T->lchild);
preTraverse(T->rchild);
}
}
void main() {
pnode T;
createBitree(T);
preTraverse(T);
}