【发布时间】:2014-07-25 00:06:39
【问题描述】:
我正在尝试编写一个反向打印链接列表的递归方法,但我收到了 stackoverflow 错误。该方法应在到达数组的最后一个元素时终止,并将控制权返回给调用它的方法,然后该方法将打印并返回给调用它的方法,依此类推。
public void print(Node node){
if(node.next != null)
print(node.next);
System.out.println(" " + node.value + " ");
}
【问题讨论】:
-
您的列表看起来要么 (1) 太长,要么 (2) 循环。
-
你没有描述你的链表的拓扑结构。是不是圆形的?您是否有
tail或head参考,我们可以(可能)使用它来停止您的迭代? -
有头部参考。这是一个单链表
-
我觉得问题是我的内存太小了。有什么建议吗?
-
如果是内存问题,需要增加栈空间。查看用于运行程序的任何选项。
标签: java recursion linked-list stack-overflow