Juicio del árbol de ordenación binaria (hackerrank) java

Una breve introducción al árbol de clasificación de árboles binarios:

  1. El valor de cada nodo en el subárbol izquierdo de un nodo es menor que el valor de los datos de ese nodo.
  2. El valor de cada nodo en el subárbol derecho de un nodo es mayor que el valor de los datos de ese nodo.

    Vi a mucha gente escribiendo en Internet antes, solo quiero decir, ¿lo has probado? ¿Cuántos casos ha probado?

    Comencemos a escribir el código fuente de mi prueba de puntuación en Hackerrank:

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;
}

La sobrecarga es para admitir más formas de uso, y sigue siendo el segundo método.

Supongo que te gusta

Origin blog.csdn.net/u014377853/article/details/52672797
Recomendado
Clasificación