“递归”listToString() - 链接列表中的方法

时间:2015-03-09 10:00:49

标签: java string linked-list

由于准备Java考试,目前正在访问一个权力课程,我们基本上提出了一个问题:

    class Node{    //List node
        String text;
        Node next;
    }

    class Stringbuilder{
        ...
        void append(String s) //attaches s
        String toString()     //returns the fully built String
    }

    public static String listToString(Node first){
        //TO DO
    }

我们的任务是定义listToString。我们做了一个绝对有效的迭代方法,但我很好奇这个递归方法:

    public static String listToString(Node first){
        StringBuilder sb = new StringBuilder();
        if(first == null) return "";
        String result = first.text;
        return result + sb.append(first.next.text).toString();
    }

所以问题是:这可以吗?

1 个答案:

答案 0 :(得分:0)

您发布的listToString方法没有任何递归。它必须称自己为递归。

public static String listToString(Node first)
{
    if(first == null) return "";
    String result = first.text;
    return result + " " + listToString(first.next);
}