## Similar Problems

Similar Problems not available

# Shuffle The Array

## Companies:

LeetCode: Shuffle The Array Leetcode Solution

Difficulty: Unknown

Topics: not-available

Problem Statement:

Given an array `nums`

consisting of `2n`

elements, return an array consisting of `n`

elements of the original array shuffled in a way where `nums[i]`

and `nums[i + n]`

are shuffled together.

Example:

```
Input: nums = [2,5,1,3,4,7], n = 3
Output: [2,3,5,4,1,7]
Explanation: Since n = 3, we have [2,5,1] and [3,4,7]. After shuffling, the array becomes [2,3,5,4,1,7].
```

Solution: We can solve this problem by iterating through the array and creating a new array where the elements are shuffled together. Below is the step-by-step solution to this problem:

- Define an empty array to store the shuffled elements of the given array.

```
shuffled_arr = []
```

- Initialize two pointers
`i`

and`j`

to point to the first and the`n+1`

th element of the given array respectively.

```
i = 0
j = n
```

- Iterate through the array until
`i`

is less than`n`

.

```
while i < n:
```

- Append the
`i`

th and`j`

th element of the given array to the`shuffled_arr`

.

```
shuffled_arr.append(nums[i])
shuffled_arr.append(nums[j])
```

- Increment both
`i`

and`j`

by 1.

```
i += 1
j += 1
```

- Return the
`shuffled_arr`

.

```
return shuffled_arr
```

The complete function will look like this:

```
def shuffle(nums, n):
shuffled_arr = []
i = 0
j = n
while i < n:
shuffled_arr.append(nums[i])
shuffled_arr.append(nums[j])
i += 1
j += 1
return shuffled_arr
```

Time Complexity: O(n), where n is the length of the given array.

Space Complexity: O(n), where n is the length of the given array.

## Solution Implementation

`1`