バイナリソートツリー(ハッカーランク)Javaの判断

バイナリツリーソーティングツリーの簡単な紹介:

  1. ノードの左側のサブツリーにあるすべてのノードの値は、そのノードのデータ値よりも小さいです。
  2. ノードの右側のサブツリーにあるすべてのノードの値は、そのノードのデータ値よりも大きくなっています。

    以前インターネットでたくさんの人が書いているのを見たことがありますが、あなたはそれをテストしたことがありますか?テストしたケースはいくつありますか?

    ハッカーランクで私のスコアテストのソースコードを書き始めましょう:

boolean checkBST(Node root) {
    return checkBST(root, Integer.MIN_VALUE, Integer.MAX_VALUE); 
}

boolean checkBST(Node root, int min, int max) {
    if (root == null) return true; 

    if (root.data <= min || root.data >= max)
        return false;

    if (!checkBST(root.left, min, root.data) || !checkBST(root.right, root.data, max))
        return false;

    return true;
}

オーバーロードは、より多くの使用方法をサポートすることであり、依然として2番目の方法です。

おすすめ

転載: blog.csdn.net/u014377853/article/details/52672797