Practice Problem

Swap Nodes in Pairs

Difficulty: Medium

Given a linked list, swap every two adjacent nodes and return its head. You must solve it without modifying the values in the list's nodes.

Swap Nodes in Pairs

Given a linked list, swap every two adjacent nodes and return its head. You must solve the problem without modifying the values in the list's nodes (i.e., only nodes themselves may be changed).

Examples

Example 1:

Input: head = [1, 2, 3, 4]
Output: [2, 1, 4, 3]

Example 2:

Input: head = []
Output: []

Example 3:

Input: head = [1]
Output: [1]

Constraints

  • The number of nodes in the list is in the range [0, 100].
  • 0 <= Node.val <= 100

Expected Complexity

  • Time: O(n)
  • Space: O(1) for iterative
MEDIUM
Singly Linked List
Pointers
Recursion
Intermediate

0 views

Solution

Hints

Hint 1
Hint 2
Premium
Hint 3
Premium
Hint 4
Premium