我想知道是否有可能遍歷鏈表這樣的:遍歷C++單鏈表
currentNode = randomNode;//where randomNode may or may not = firstNode
prevNode = firstNode;
while(prevNode != currentNode && prevNode->link != currentNode)
{
prevNode = prevNode->link;
}
是否有可能做到這一點在C++中,當我試圖找到節點currentNode之前在一個單獨的鏈表中?
我試圖在學校任務的控制檯應用程序中實現類似的東西,所以假設我不能使用任何像boost庫/ list /任何讓生活變得更容易的東西等等。所以基本上,我只有我可以使用相當原始的數據類型和庫。
爲什麼「想知道」你是否可以試試看看它是如何工作的?我在這裏沒有看到任何問題,假設你總是至少有一個節點,並且'randomNode'保證是列表中的一個有效節點(所以你永遠不會運行「結束」)。 – 2009-10-05 22:58:28
你到底想做什麼?在鏈表中搜索節點? – Ashwin 2009-10-05 22:59:52
while條件看起來有點奇怪...爲什麼要測試prevNode!= currentNode?另外,列表可以是空的嗎?是否可以發生currentNode不在列表中? – 2009-10-05 23:03:17