Как написать метод глубины () без узла внутри параметра? - PullRequest
2 голосов
/ 31 марта 2019

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

Вот мой код:

    public int getDepth(Node node) {
    if (node == null) {
        return 0;
    } else {
        int leftSubtreeDepth = getDepth(node.leftChild);
        int rightSubtreeDepth = getDepth(node.rightChild);

        if (leftSubtreeDepth > rightSubtreeDepth) {
            return (leftSubtreeDepth + 1);
        } else {
            return (rightSubtreeDepth + 1);
        }
    }
}

Вывод правильный, когда я использовал этот код. Тем не менее, теперь, когда я знаю, что мне нужно написать метод глубины с переменной типа int (например, public int getDepth (int key)), могу ли я что-нибудь сделать, чтобы изменить этот код? Я надеюсь, что это всего лишь небольшое изменение / исправление, поскольку мне понадобилось некоторое время, чтобы написать этот код.

...