# Swap Nodes in Pairs（easy）

For example,
Given 1->2->3->4, you should return the list as 2->1->4->3.

Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.

将链表临接的元素交换

每次读两个节点插入新链表，因为是指针操作，不占用额外空间。最后需要把tail指针的next设为NULL。例如链表为p1->p2->p3->p4的情况，如果最后不修改p3->next，那么就会出现一个环：p2->p1->p4->p3->p4->...

public ListNode swapPairs(ListNode head) {
return null;
ListNode helper = new ListNode(0);
ListNode pre = helper;
while(cur!=null && cur.next!=null)
{
ListNode next = cur.next.next;
cur.next.next = cur;
pre.next = cur.next;
if(next!=null && next.next!=null)
cur.next = next.next;
else
cur.next = next;
pre = cur;
cur = next;
}
return helper.next;
}

#### (Java)LeetCode-24. Swap Nodes in Pairs

2016-06-02 16:53:15

#### Swap Nodes in Pairs -- LeetCode

2014-02-26 01:37:59

#### LeetCode 24 Swap Nodes in Pairs (C,C++,Java,Python)

2015-05-11 16:37:22

#### LeetCode24. Swap Nodes in Pairs简单到一次性通过

2016-02-02 21:01:22

#### [LeetCode] 024. Swap Nodes in Pairs (Medium) (C++/Python)

2015-03-05 14:39:27

#### LeetCode 24 Swap Nodes in Pairs（交换序列中的结点）（Linked List）

2015-11-12 18:43:57

#### 24. Swap Nodes in Pairs -leetcode-java

2016-05-26 18:54:52

#### Swap Nodes in Pairs 交换链表的每两个节点

2018-05-31 11:17:11

#### 24. Swap Nodes in Pairs（python）

2016-09-18 21:33:51

#### [leetcode javascript解题]Swap Nodes in Pairs

2016-12-22 10:38:30