Depuis longtemps, je n'ai pas utilisé C ou C++, alors oubliez complètement les pointeurs. Je connais C# et en ai écrit une version de base. Besoin de savoir si je fais bien/mal?Échange de nœuds sur une seule liste chaînée
entrée: liste chaînée a-> b-> c-> d-> e> null
sortie: liste chaînée b-> a-> d-> c-> e> null
Nous devons écrire le code de sorte que la position de la mémoire soit permutée et non la valeur du nœud.
public void SwapLinkedList(LinkedList<int> LL)
{
LinkedListNode<int> current = LL.First;
while (current.Next != null)
{
int temp = current.Next.Value;
current.Next.Value = current.Value;
current.Value = temp;
current = current.Next.Next;
}
}
Définissez «swap». Ce code place la première valeur de liste à la fin correctement, est-ce ce que vous voulez faire? –
Jetez un oeil à ce fil http://stackoverflow.com/questions/1535988/swapping-nodes-on-a-single-linked-list – Alam