BST toArray, заполнена только половина массива и неправильный порядок? - PullRequest
0 голосов
/ 02 декабря 2018

Я занимаюсь написанием двоичных деревьев поиска и пытаюсь написать метод для преобразования моего BST в массив (без предварительного преобразования в ArrayList).По некоторым причинам, только половина массива «заполняется», при этом значения располагаются в неправильном порядке, а остальные индексы массива устанавливаются в ноль.Я не могу понять, где я иду не так здесь.Пожалуйста, ведите меня, я новичок!

public Object[] toArray() {
        Object arr[] = new Object[size];
        return fillArrayInorder(root, arr, 0);
    }

    private Object[] fillArrayInorder(Node<E> node, Object[] arr, int index) {
        if (node != null) {
            fillArrayInorder(node.left, arr, index);
            arr[index++] = node;
            fillArrayInorder(node.right, arr, index);
        }
        return arr;
    }
...