寻找二叉树中任意节点的父节点
现在我任意建立一棵二叉树,我要返回该二叉树中任意节点的父节点,用了一下递归算法,可是老是报错,该怎么解决呢?请大家指教,代码如下(确定其他部分正确):
LinkNode* BinTree::getParent(LinkNode* current,LinkNode* parent,bool flag=true)//返回current节点的父节点
{
if(parent==NULL || parent->Isleaf())
{
flag=false;
return NULL;
}
if(parent->getLChild()==current || parent->getRChild()==current)
{
return parent;
}
//返回值与递归的先后顺序有关,我该怎么解决呢?
else
{
getParent(current,parent->getRChild());
if(flag==false)
{
getParent(current,root->getLChild());
}
}
请大家帮忙给出一个可行的代码好吗?谢谢啦!