Rotate List

IF
AlgoAxiomStaff Engineers
JSTS
Medium20 mins

Given the head of a linked list, rotate the list to the right by k places.

Examples

Example 1:

Input: head = [1,2,3,4,5], k = 2

Output: [4,5,1,2,3]

Explanation: After rotating right by 1: [5,1,2,3,4]. After rotating right by 2: [4,5,1,2,3].

Example 2:

Input: head = [0,1,2], k = 4

Output: [2,0,1]

Explanation: k=4 is equivalent to k=1 (since 4 % 3 = 1). After rotating right by 1: [2,0,1].

Example 3:

Input: head = [1], k = 1

Output: [1]

Explanation: A single-node list is unchanged by any rotation.

Constraints

  • The number of nodes in the list is in the range [0, 500]
  • -100 <= Node.val <= 100
  • 0 <= k <= 2 * 10⁹
Source: Fast and Slow Pointers pattern — AlgoAxiom
JavaScript
Test Case 1
root = [1, 2, 3]
Test Case 2
root = [1, 2, 3, 4, 5]
Idle