📅  最后修改于: 2023-12-03 15:00:15.582000             🧑  作者: Mango
LinkedList
LinkedList<T> originalList = new LinkedList<T>();
//添加节点
LinkedList<T> copiedList = new LinkedList<T>(originalList);
以上代码将originalList中的所有节点复制到copiedList中。如果需要复制某个特定的节点及其后面的节点,则可以使用以下代码:
LinkedListNode<T> originalNode = originalList.Find(value);
LinkedListNode<T> copiedNode = new LinkedListNode<T>(originalNode.Value);
LinkedListNode<T> current = copiedNode;
while (originalNode.Next != null)
{
originalNode = originalNode.Next;
LinkedListNode<T> newNode = new LinkedListNode<T>(originalNode.Value);
current.Next = newNode;
current = newNode;
}
LinkedList<T> copiedList = new LinkedList<T>();
copiedList.AddFirst(copiedNode);
以上代码将以value为值的节点及其后面的节点复制到copiedList中。利用原始节点和新的节点,我们可以循环复制所有节点。最后,我们将复制的节点添加到新的LinkedList
以上就是C#中复制整个LinkedList