New update is available. Click here to update.

Zigzag Traversal Of Two Arrays

Posted: 20 Mar, 2021
Difficulty: Moderate

PROBLEM STATEMENT

Try Problem

You are given two lists/arrays ‘ARR1’ and ‘ARR2’ consisting of ‘N’ and ‘M’ integers respectively.

Your task is to traverse both ‘ARR1’ and ‘ARR2’ together in Zigzag order and return a list/array representing their Zigzag traversal.

In ZigZag traversal, we iterate the arrays/list alternatively starting with ‘ARR1’ i.e. in order ARR1[0], ARR2[0], ARR1[1], ARR2[1], ARR1[2], ARR2[2] and so on. See the example for more clarity.

Example:
Consider ARR1 = [1, 2] and ARR2 = [3, 4, 5, 6], then their Zigzag traversal will be represented by the list/array  [1, 3, 2, 4, 5, 6]. 
We traverse in order ARR1[0], ARR2[0], ARR1[1], ARR2[1], ARR2[2], ARR2[3].  Note, ARR1 is completely traversed at the 3rd position, and after which we simply iterate over ‘ARR2’.
Input format:
The first line of input contains an integer ‘T’ denoting the number of test cases. then ‘T’ test cases follow.

The first line of each test case consists of two single space-separated integers ‘N’ and ‘M’ representing the number of integers in ‘ARR1’ and ‘ARR2’ respectively.

The second line of each test case consists of ‘N’ single space-separated integers representing array ‘ARR1’

The third line of each test case consists of ‘M’ single space-separated integers representing array ‘ARR2’
Output format :
For each test case, return an array of size ‘N’ + ‘M’ that contains integers representing Zigzag traversal of ‘ARR1’ and ‘ARR2’.

Note:

You do not need to print anything, it has already been taken care of. Just implement the given function.
Constraints:
1 <= T <= 50
0 <= N <= 10^4
0 <= M <= 10^4
0 <= ARR1[i] <= 10^9
0 <= ARR2[i] <= 10^9
N + M > 0

Time limit: 1 sec