C++程序:将链表中的重复节点替换为副本
在本文中,我们给出了一个链表,其中包含从 1 到 n 的元素以及重复项。元素 1 到 n 将始终与 [1..n] 中的重复项存在。我们需要用 n+1、n+2 等替换每个重复元素。
让我们考虑一个例子
1→2→2→4→5→3→6→6
接下来 n = 42。因此,每个重复项都会被替换为 n+1、n+2 等。接下来的 42 被替换为 47,接下来的 46 被替换为 48,第一个实例保持原样。
首先,我们需要在main方法中构造一个二叉树,如下所示 -
Node* head = new Node(1); head->next = new Node(2); head->next->next = new Node(2); head->next->next->next = new Node(4); head->next->next->next->next = new Node(5); head->next->next->next->next->next = new Node(3); head->next->next->next->next->next->next = new Node(6); head->next->next->next->next->next->next->next = new Node(6); solve(head);登录后复制