ZBLOG

package 线性表; public class CirDoublelyLists { public DoubleNode head; public CirDoublelyLists() { this.head=new DoubleNode(); this.head.prev=this.head; this.head.next=this.head; } public String to...

要使最后一个深拷贝后的链表输出为1234567,你需要更改CirDoublelyLists类中的构造函数以及循环体。

请尝试以下更改:

  1. public CirDoublelyLists(CirDoublelyLists<T> list) {
  2. this();
  3. DoubleNode<T> rear = this.head;
  4. for (DoubleNode<T> rear1 = list.head.next; rear1 != list.head; rear1 = rear1.next) {
  5. DoubleNode<T> add = new DoubleNode<T>(rear1.data, rear, this.head);
  6. rear.next = add;
  7. this.head.prev = add; // 这里修改为this.head.prev
  8. rear = rear.next;
  9. }
  10. }

然后,在 main 方法中修改为:

  1. System.out.println("原链表:" + list1.toString());
  2. CirDoublelyLists<Integer> list2 = new CirDoublelyLists<Integer>();
  3. for (int j = 6; j <= 7; j++) {
  4. list2.insert(j);
  5. }
  6. System.out.println("深拷贝后的链表:" + list2.toString());

这样就可以得到期望的结果了。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=9284

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?