バイナリツリーがバイナリ検索ツリーであるかどうかを示す以下のメソッドを記述しようとしましたか?私はテストケースの半分だけを渡します。私は間違って何をしていますか?バイナリツリーがバイナリ検索ツリーであるかどうかをチェックする機能はありますか?
boolean checkBST(Node root) {
boolean leftflag = false;
boolean rightflag = false;
Node l = root.left;
Node r = root.right;
if(l!=null) {
if(root.data <= l.data) {
leftflag = false;
}
else {
leftflag = true;
checkBST(l);
}
}
if(leftflag == false)
return false;
if(r != null) {
if(root.data >= r.data) {
rightflag = false;
}
else {
rightflag = true;
checkBST(r);
}
}
if(rightflag == false)
return false;
return true;
}
ようこそStackOverflowのに。ヘルプドキュメントの投稿ガイドラインを読み、それに従ってください。 [最小、完全で検証可能な例](http://stackoverflow.com/help/mcve)がここに適用されます。コードを投稿して問題を正確に記述するまでは、効果的にお手伝いすることはできません。具体的には、投稿されたコードは何もしません。テストドライバはありません。また、失敗したケースを実証することもできません。 – Prune