您的位置首页生活百科

创建二叉排序兰贵仅书树

创建二叉排序兰贵仅书树

的有关信息介绍如下:

问题补充说明:Status CreateBiTree(BiTree &T,int a[],int n) { // 算法6.4 // 按先序次序输入二叉树中结点的值(一个字符),’#’字符表示空树, int i; for(i=0;idata = n; T->data = a[0]; T->lchild = T->rchild = NULL; // 构造二叉链表表示的二叉树T。 for(i = 0;idata = a[i]; // 生成根结点 if(a[i]<=a[i-1]) { T = T->lchild; // 插入左子树 T->data = a[i]; //出问题!!!!!!!!! } else { T = T->rchild;// 插入右子树 T->data = a[i]; } } return OK;} // CreateBiTree调试的时候T->data无法显示赋值。。为什么??

创建二叉排序兰贵仅书树

1.应该是你在插入左子树或者右子树之前没有为T->rchild和T硫坚备合音只叫请临采->lchild创建内存区域。也就是malloc

2.T应该是一个tree的死业夫够结构体或者类吧,为什么

T=(BiTNode360问答*)malloc(sizeof(BiTNode))给T赋给了一个指向新树节点的地址。是不是BiTree就是BiTNode*类型?这点没有看明白O(∩_∩)O~

3.T->data=n;感觉这个没有道理,是不是连逐信左历坐激要记录节点的总个卷维未项庆教先民夜更数?