誰かが私になぜこれが機能しないのか教えてもらえますか? これは私にとって正しいようですバイナリツリーがバイナリ検索ツリーであるかどうかをチェックする機能
誰かにこれを調べてください。
私は間違いを見つけられません。
bool checkbst(node* root,int minValue,int maxValue)
{
if(root==NULL)
{
return true;
}
else if(((root->data)>(minValue))&&
((root->data)>(maxValue))&&
(checkbst(root->left,minValue,root->data))&&
(checkbst(root->right,root->data,maxValue)))
{
return true;
}
else
{
return false;
}
}
void isbst(node* root)
{
if(checkbst(root,INT_MIN,INT_MAX))
{
cout<<"the tree is bst";
}
}
編集する必要があり、あなたのコード内で小さなミスがあります。 – user4581301
あなたのbstには一意の値しかありませんか? – Deduplicator
はい、それは一意の値しか持っていません。 – mistletoe