我需要一个 swapList(LinkedList& Other) 函数来负责基本上交换两个列表的值。目前,它取 Other 的最后一个元素并将其输入到 *this 的第一个元素中。然后它还将 Other 的最后一个元素移动到其列表的前面。这是我到目前为止所拥有的:
Node *nodePtr = Other.head;
Node *temp = this->head;
while(nodePtr){
temp->value = nodePtr->value;
nodePtr->value = Other.head->value;
Other.head->value = temp->value;
nodePtr = nodePtr->next;
}
}
现在,我知道了复制交换习语,我相信这意味着我可以在 operator=() 重载中调用交换函数。我似乎无法弄清楚交换。我玩过很多次,这既不是我的第一次,也不是我最后一次迭代该函数。任何帮助深表感谢。搜索只会在单个列表中产生交换节点。