我一直试图成对交换链表元素。我不是通过数据交换元素,而是通过交换链接来交换元素。
C#代码:
public LinkedList pairWiseSwapLinks(LinkedList ll)
{
LinkedList curr = ll;
LinkedList next = curr.nextNode;
ll = curr;
while (curr.nextNode != null && next.nextNode != null)
{
curr.nextNode = next.nextNode;
next.nextNode = curr;
Console.WriteLine(curr.data);
Console.WriteLine(next.data);
curr = curr.nextNode;
next = curr.nextNode;
Console.WriteLine(curr.data);
Console.WriteLine(next.data);
}
return ll;
}
输入为:1 - > 3 - > 10 - > 14 - > 16 - > 20 - > 40 输出:1 - > 10 - > 16 - > 40
有人可以帮助我解决我的错误吗?
答案 0 :(得分:0)
有两个问题:
我不想在这里给你直接解决方案,但我可以给你一些提示: