Java有序遍历树

时间:2020-05-16 04:07:48

标签: java recursion tree nodes inorder

我试图从根节点遍历一棵树,最后得到一个包含来自节点的值(符号)的有序遍历字符串。

节点具有leftChild和rightChild,但是在某些情况下两者均为空(节点是叶),在某些情况下节点仅具有rightChild,在某些情况下节点具有leftChild和rightChild。 / p>

每个节点都有一个用字符串表示的值,例如字符串符号=“ 8”。

该方法获取树的根节点,并返回节点符号字符串(按顺序遍历)。

这是节点类:

public abstract class ExpNode {
    public ExpNode leftChild;
    public ExpNode rightChild;

在此类中,我有尝试进行遍历的方法。 该方法还说缺少return语句。

public class ExpressionTreeBuilder {

    private static ExpNode root;
    private static String string = new String();

    public static String toInfixString(ExpNode node) {
        if (node == null) {
            return string; //if null return string
       }

        toInfixString(node.leftChild); //recursively move left
        string += node.symbol;         //add value
        toInfixString(node.rightChild);//recursively move right

        return string;
    }

请您告诉我我哪里出问题了!

0 个答案:

没有答案
相关问题