Зачем объявлять int в методе, который указывает на Node? - PullRequest
0 голосов
/ 22 мая 2019

Я не понимаю, почему объявление 'int' в этом методе возвращает фактическое значение вместо сбоя. Считается ли существование узла как 1 (истина), а затем объединенному значению всех «истин» присваивается значение int (rDepth или lDepth)?

Это метод класса в BST.


public static int getHeight(Node root){

    if(root==null) {return -1;}

    int rDepth=getHeight(root.right);

    int lDepth=getHeight(root.left);

       return Math.max(rDepth, lDepth)+1;

 }

Я ожидал, что объявление int, а затем присвоение ему метода, указывающего на другой объектный узел, не будут работать вообще.

...