我的代码的问题是,当搜索左孩子值时,由于递归级别,它会返回并检查右孩子。并且返回不正确。我找不到克服它的方法。
node * search(node *ptr,int key)
{
if(ptr->data==key)
return ptr;
else
{
if(ptr->lchild!='\0')
search(ptr->lchild,key);
else
return '\0';
if(ptr->rchild!='\0')
search(ptr->rchild,key);
else
return '\0';
}
}