Довольно распечатать дерево в консоли оболочки в Java - PullRequest
0 голосов
/ 03 сентября 2018

Если вы работаете с деревьями, один из самых полезных способов реализации - это простой способ его распечатать, в следующем моем решении вывести дерево на Java:

public void printTree(NodeRB tree, String indent, boolean print_leaf) {
    if(tree == NILL) {
        System.out.print((print_leaf?indent+"   |-+*\n":""));
    } else { 
        indent += "   ";
        if(tree.p == NILL || tree.p == null) {
            printTree(tree.right, indent + " ", print_leaf);
            System.out.print(indent + "+" + tree.value + "\n");
            printTree(tree.left, indent + " ", print_leaf);
        }else if(tree.p.right==tree) {
            printTree(tree.right, indent + " ", print_leaf);
            System.out.print(indent + "|+" + tree.value + "\n");
            printTree(tree.left, indent + "|", print_leaf);
        }
        else {  
            printTree(tree.right, indent + "|", print_leaf);
            System.out.print(indent + "|+" + tree.value + "\n");
            printTree(tree.left, indent + " ", print_leaf);

        }
    }

}

У кого-то есть предложения по его улучшению?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...