我想知道是否可以遍历这样的链表:


currentNode = randomNode;//where randomNode may or may not = firstNode
prevNode = firstNode;
while(prevNode != currentNode && prevNode->link != currentNode)
{
    prevNode = prevNode->link;
}


当我尝试在单链列表中的currentNode之前找到节点时,是否可以在C ++中执行此操作?

我尝试在控制台应用程序中为学校作业实现类似这样的功能,因此假设我不能使用任何类似的东西,例如boost库/列表/任何使生活更轻松的东西,等等。因此,基本上,我只有相当原始的数据类型,图书馆可供我使用。

最佳答案

您可能要确保prevNode-> link也不为空引用,以防currentNode实际未链接。

09-29 23:26