Register for our webinar

1 hour

Step 1

Step 2

Congratulations!

You have registered for our webinar

Oops! Something went wrong while submitting the form.

Step 1

Step 2

Confirmed

You are scheduled with Interview Kickstart.

Redirecting...

Oops! Something went wrong while submitting the form.

Head of Career Skills Development & Coaching

*Based on past data of successful IK students

1) arr1 of size n, which contains n positive integers sorted in the ascending order.

2) arr2 of size (2*n) (twice the size of first), which contains n positive integers sorted in the ascending order in its first half. Second half of this array arr2 is empty. (Empty elements are marked by 0).

Write a function that takes these two arrays, and merges the first one into second one, resulting in an increasingly sorted array of (2*n) positive integers.

Input:

n = 3

arr1 = [1 3 5]

arr2 = [2 4 6 0 0 0]

Output: arr2 = [1 2 3 4 5 6]

Input Parameters: There are two arguments. First one is an integer array denoting arr1 and second one is also an integer array denoting arr2.

Output: You don't have to return anything. You just need to modify the given array arr2.

● 1

● 1

● 1

● arr2[i] = 0 (for the second half)

● You can use only constant extra space.

● 0 denotes an empty space.

We are allowed to use only constant extra space. We can start merging from the end.

We could first create empty space at the beginning instead of the end by copying arr2[i] to arr2[n + i] for i from 0 to n - 1, and then start merging from the beginning, but this would add one more loop unnecessarily.

O(n) as we are traversing through the arr1 and arr2 only once.

O(1).

O(n) due to input size.

Note: Input and Output will already be taken care of.

1) arr1 of size n, which contains n positive integers sorted in the ascending order.

2) arr2 of size (2*n) (twice the size of first), which contains n positive integers sorted in the ascending order in its first half. Second half of this array arr2 is empty. (Empty elements are marked by 0).

Write a function that takes these two arrays, and merges the first one into second one, resulting in an increasingly sorted array of (2*n) positive integers.

Input:

n = 3

arr1 = [1 3 5]

arr2 = [2 4 6 0 0 0]

Output: arr2 = [1 2 3 4 5 6]

Input Parameters: There are two arguments. First one is an integer array denoting arr1 and second one is also an integer array denoting arr2.

Output: You don't have to return anything. You just need to modify the given array arr2.

● 1

● 1

● 1

● arr2[i] = 0 (for the second half)

● You can use only constant extra space.

● 0 denotes an empty space.

We are allowed to use only constant extra space. We can start merging from the end.

We could first create empty space at the beginning instead of the end by copying arr2[i] to arr2[n + i] for i from 0 to n - 1, and then start merging from the beginning, but this would add one more loop unnecessarily.

O(n) as we are traversing through the arr1 and arr2 only once.

O(1).

O(n) due to input size.

**Attend our free webinar to amp up your career and get the salary you deserve.**

Hosted By

Ryan Valles

Founder, Interview Kickstart