[求助]二叉树查找问题
BTNode* FindNode(BTNode *b,ElemType x)//找到值为x的节点并返回
{
if(!b)//如果b不存在
{
return NULL; //返回未找到,并且跳出函数
}
else //否则(b存在的情况)
{
if(b->data==x) //如果找到了
{
return b; //返回b的地址,并且跳出函数
}
else //否则(继续查找)
{
FindNode(b->lchild,x);//用函数FindNode()遍历b的左子树(用同样方法,这句就是递归了)
FindNode(b->rchild,x);//用函数FindNode()遍历b的右子树 这句也是递归
}
}
}
请问当我找到了一个结点x后,用return返回时,是退出了整个函数,还是结束了本次递归调用?
你这个函数能找多个值为x的结点吗?