gpt4 book ai didi

java - java中如何复制链表?

转载 作者:太空宇宙 更新时间:2023-11-04 07:55:22 25 4
gpt4 key购买 nike

我的Node类表示链表的节点,定义如下:

public class Node
{
Node next;
String data;

public Node (String data)
{
this.data = data;
}
}

我这样使用它:

Node node, head, tail;
String name; // name to be entered
int count = 0;

// initialize the head to null

head = null;

do
{
System.out.print ("Enter a name. Type q to end.");
name = stdin.readLine ();

// create a new node if the user doesn't type q
if (!name.equals ("q"))
{
node = new Node (name);
node.next = head;
count++;

// update the head to point to the new front of the list
head = node;
}
}
while (!name.equals ("q")); // loop continues until "quit" selected
node = head;

假设我想将名称备份到一个方法,以防我修改原始列表。我怎样才能做到这一点?无需将其写入文件。

名称是存储在链接列表中的变量,在用户按 q 后,我想修改列表,同时保留用户存储的内容作为备份,以防他/她想要回溯或查看原始列表。

最佳答案

最好让 Node 不可变。因此每次当你想要修改节点时,你都会创建一个新节点。并将旧的存储在链接列表历史记录中。

关于java - java中如何复制链表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13706194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com