二叉树的建立

将二叉树中每个结点的空指针引出一个虚结点,其值为一特定值,比如”#“。这种处理后的二叉树称为原二叉树的扩展二叉树。
前序遍历序列建立二叉树:

void CreateBiTree(BiTree *T){
	TElemType ch;
	scanf("%c",&ch);
	if(ch=="#")
		*T=NULL;
	else{
		*T=(BiTree)malloc(sizeof(BiTNode));
		if(!*T)
			exit(OVERFLOW) 		/*没有空间,溢出*/;
		(*T)->data=ch;			/*生成根节点*/
		CreateBiTree(&(*T)->lchild);		/*构造左子树*/
		CreateBiTree(&(*T)->rchild);		/*构造右子树 */
	}
}

版权声明:本文为weixin_41896152原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。