// 定义
struct Tree {
int data; // 数据域
struct Tree *Lchild, *RChild; // 左孩子和右孩子
};
创建树:
// 创建树
Tree* createTree(int a[], int i) {
// 创建树
if(a[i]){
Tree *p = new Tree;
p->data = a[i];
p->Lchild = creatTree(a, 2*i);
p->Rchild = CreatTree(a, 2*i+1);
return p;
}else {
return NULL;
}
}
int main() {
Tree *root; // 根节点
int a[20] = {0,1,2,3,4,4,5,6};
// 建树
root = createTree(a,1);
}