Возврат строки значений из дерева - PullRequest
0 голосов
/ 16 июня 2020

Хорошо, поэтому я хочу пройти по дереву с указанием порядка, предварительного и последующего порядка. У меня есть правильные алгоритмы для обхода дерева, но мне нужно вернуть строку в форме "Node1 Node2 Node3", но у меня есть "Node1Node2Node3". Вот мой код для предварительного заказа:

public String PreOrder() {
        /* TODO: Implement */
        StringBuilder string = new StringBuilder();
        preorderRecursive(string, root);
        return string.toString();
    }
    public StringBuilder preorderRecursive(StringBuilder string, Node current){
        if (current != null) {
        string.append(current.key);
        preorderRecursive(string, current.left);
        preorderRecursive(string, current.right);
        }
        return string;
    }

, и я получаю сообщение об ошибке org.junit.ComparisonFailure: expected:<3[ 1 2 8 4 5 7 9 ]10> but was:<3[1284579]10>

1 Ответ

0 голосов
/ 16 июня 2020

просто добавьте пробел в stringBuilder,

if (current != null) {
   string.append(current.key).append(" ");
   ...
...