Shuffle the Array - Problem

Given an array nums consisting of 2n elements in the form [x1,x2,...,xn,y1,y2,...,yn].

Return the array in the form [x1,y1,x2,y2,...,xn,yn].

Input & Output

Example 1 — Basic Case
$ Input: nums = [2,5,1,3,4,7], n = 3
Output: [2,3,5,4,1,7]
💡 Note: First half is [2,5,1] and second half is [3,4,7]. Alternate: 2,3,5,4,1,7
Example 2 — Smaller Array
$ Input: nums = [1,2,3,4,4,3,2,1], n = 4
Output: [1,4,2,3,3,2,4,1]
💡 Note: First half [1,2,3,4], second half [4,3,2,1]. Result: [1,4,2,3,3,2,4,1]
Example 3 — Minimum Size
$ Input: nums = [1,1,2,2], n = 2
Output: [1,2,1,2]
💡 Note: First half [1,1], second half [2,2]. Alternate: [1,2,1,2]

Constraints

  • 1 ≤ n ≤ 500
  • nums.length == 2n
  • 1 ≤ nums[i] ≤ 103

Visualization

Tap to expand
Shuffle the Array Problem OverviewTransform [x1,x2,x3,y1,y2,y3] → [x1,y1,x2,y2,x3,y3]251347First Half (X)Second Half (Y)↓ SHUFFLE ↓235417Shuffled ResultPattern: [x1,y1,x2,y2,x3,y3] - Alternating Elements
Understanding the Visualization
1
Input
Array of 2n elements: [x1,x2,...,xn,y1,y2,...,yn]
2
Process
Alternate picking from first half and second half
3
Output
Shuffled array: [x1,y1,x2,y2,...,xn,yn]
Key Takeaway
🎯 Key Insight: The shuffle creates an alternating pattern by interleaving elements from two equal halves
Asked in
Amazon 15 Apple 12
180.0K Views
Medium Frequency
~15 min Avg. Time
3.5K Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen