漫长的一夜结束后,我在递归复制链接列表时遇到了麻烦,我可以使用简单的迭代方法来做到这一点,但是当我尝试设置它时,我遇到了堆栈溢出错误用递归。然而,这在概念上对我来说是有意义的。有人能引导我走向正确的方向吗?这是我到目前为止所拥有的:
public LinkedList<E> createCopyRecursive(Node<E> aNode) {
LinkedList<E> copyList = new LinkedList<E>();
copyList.myStart = myStart;
if (copyList.size() == 0) {
aNode = myStart.getLink();
}
if (aNode.getLink() == null) {
return copyList;
}
else {
copyList.add(aNode.getValue());
return createCopyRecursive(aNode.getLink());
}
}
最佳答案
每次递归到该方法时,都会创建一个新的 LinkedList。
我怀疑您想在方法外部实例化它,将其传入并每次添加到它。
关于java - 递归复制链表 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30368211/