标签:流程 条件 getheight 9.png com 应用 int 编码 组成
BTNode *CreateBTree(char *pre,char *in,int n)//建树
{
若n<=0;返回空
创建根结点b
b->data=*pre;
利用循环查找根结点在中序序列的位置k
创建左子树:
b->lchild=CreateBTree(pre+1,in,k);
创建右子树:
b->rchild=CreateBTree(pre+k+1,p+1,n-k-1);
}
int GetHeight( BTree BT )//计算高度
{
空树返回0
递归求左子树的高度为lheight
递归求右子树的高度为rheight
比较两者大小,返回较大的数并加一
}
}
编译错误
段错误
BTNode *trans(string str,int i,int maxsize)//顺序转二叉链表
{
若i>maxsize-1或i<0 返回空
若str[i]==‘#‘ 返回空
创建根结点b
b->data=str[i];
创建左子树
b->lchild=trans(str,2*i,maxsize);
创建右子树
b->rchild=trans(str,2*i+1,maxsize);
return b;
}
void levelorder(BTree b)//层次遍历
{
定义变量flag=0,树指针T
若b==NULL输出NULL
否则:
初始化队列,根结点入队列
while(队列不空){
访问对头结点
若flag==0 输出T->data并把flag=1
否则:
输出空格和T->data;
当左右孩子不为空时,左右孩子入队
}
}
树空
格式错误
标签:流程 条件 getheight 9.png com 应用 int 编码 组成
原文地址:https://www.cnblogs.com/linxiaolu/p/8992487.html