Swap Nodes in Pairs

medium

Swap every two adjacent nodes by rewiring pointers (not just swapping values)

Swap Nodes in Pairs

Key Insight

Rewire prev→second→first→rest for each pair; a dummy node handles the head swap

Step 1Setup with Dummy
Pairs: (1,2) and (3,4)
prev
D
1
2
3
4
null

Add dummy before [1,2,3,4]. prev starts at dummy.

1 / 5
Practice the Code

Step-by-Step Walkthrough: Swap Nodes in Pairs

Rewire prev→second→first→rest for each pair; a dummy node handles the head swap

  1. Setup with Dummy

    Add dummy before [1,2,3,4]. prev starts at dummy.

  2. Swap Pair (1, 2)

    first=1, second=2. Rewire: D→2→1→3. prev moves to node 1.

  3. Swap Pair (3, 4)

    first=3, second=4. Rewire: 1→4→3→null. prev moves to node 3.

  4. No More Pairs

    No more nodes to swap. All pairs are processed.

  5. Result

    Return dummy.next. [1,2,3,4] became [2,1,4,3].