我正在尝试找到两个对,它们的总和与二进制搜索树中给定的数字相同,但是,我没有得到正确的答案,请有人帮我。我的代码如下:
void BST::find_sum(node * root1,node * root2,int sum)
{
if(root1==NULL)
return;
if(root2==NULL)
{
return;
}
if((root1->data+root2->data)==sum)
{
if(root1==root2)
return;
cout<<"\t "<<root1->data<<" + "<<root2->data<<" = "<<sum;
return;
}
find_sum(root1,root2->left,sum);
find_sum(root1,root2->right,sum);
return;
}
最佳答案
您可以尝试以下方法:
find_sum(root1,root2->right,sum);
find_sum(root1,root2->left,sum);
关于c++ - 如何在BST中找到两个总和等于给定值的对?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33451025/