【问题标题】:Recursively implementing a copy constructor for linked list implementation java递归实现链表实现java的复制构造函数
【发布时间】:2015-10-06 23:59:39
【问题描述】:

您将如何递归地实现函数链表的复制构造函数? 我很困惑,因为我需要在我的 add 方法中使用复制构造函数,但是我需要在我的复制构造函数中使用我的 add 方法,这看起来有点纠结。 想法?

【问题讨论】:

  • 到目前为止您尝试过什么。我建议在您的问题中添加一些代码
  • 为什么要在 add 方法中使用复制构造函数?
  • 因为它是一个函数链表,所以如果我添加它,我需要返回一个添加了新对象的列表的深层副本,保持原样

标签: java list recursion


【解决方案1】:

复制构造函数中无需使用复制添加。

public MyList(List<? extends T> list) {
    for (T item : list)
        This.addWithoutCopy(item);
}

MyList<T> add(T item) {
    MyList<T> copy = new MyList<T>(this);
    copy.addWithoutCopy(item);
    return copy;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-13
    • 2012-08-24
    • 1970-01-01
    • 2014-06-17
    • 1970-01-01
    • 2011-04-08
    相关资源
    最近更新 更多