この質問はおそらく解決策を探す際に最も人気のある質問の1つですが、多くを見つけましたが、以下のコードが私に最も適していました。リンクリストの行を変更すると、エラーが発生する
実際には、別のリストを作成して古いリストを繰り返し、常に新しいリストのヘッドに追加します。私はこのコードを見ずにこのアイデアを再実装することを決定したとき
Node *reverseList(Node *oldList)
{
Node* newList=NULL;
while(oldList!=NULL)
{
Node *temp=oldList;
oldList=oldList->next;
temp->next=newList;
newList=temp;
}
return newList;
}
しかし、私はoldList=oldList->next;
の変更場所をしましたし、それは私の質問はnewList=temp.
後に、それは本当に違いを生むんされて置きますか?結局のところ、あなたは古いリストを反復しているので、理由を理解できませんでした。なぜ完了しなければならないのですかすぐに* temp宣言の後に?
あなたの質問は何か分かりません。コードの順序を変更すると、その動作が変わると言っていますか?すべてのリンクリストの操作上の問題を合理化する方法は、紙の上に箱と矢の束を描くことです。 –