如:input:a0; output:invalid!
input:a00;output:valid!
input:ab000;output:valid!
input:ab000c0;output:invalid!
(0是二叉树的虚节点,用前序来创建排列输入的字符串)
以下是我用的部分代码,但如果输入不合法的,如果是遗漏虚节点的(如:a0)运行时候就没反应,如果是有多余的节点的(如:ab000c0),程序直接忽略了运行。
typedef struct Binnode{
char data;
struct Binnode *lchild;
struct Binnode *rchild;
}Binnode,*Bintree ;
{
char ch;
if((ch=getchar())=='0')
{
*root=NULL;
}
else
{
*root=(Bintree)malloc(sizeof(Binnode));
(*root)->data=ch;
Creat_Bintree(&(*root)->lchild);
Creat_Bintree(&(*root)->rchild);
}
}
胡子哥哥
相关分类