LeetCode-in-Java

1389. Create Target Array in the Given Order

Easy

Given two arrays of integers nums and index. Your task is to create target array under the following rules:

Return the target array.

It is guaranteed that the insertion operations will be valid.

Example 1:

Input: nums = [0,1,2,3,4], index = [0,1,2,2,1]

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

Explanation:

nums index target
0    0     [0]
1    1     [0,1]
2    2     [0,1,2]
3    2     [0,1,3,2]
4    1     [0,4,1,3,2] 

Example 2:

Input: nums = [1,2,3,4,0], index = [0,1,2,3,0]

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

Explanation:

nums index target
1    0     [1]
2    1     [1,2]
3    2     [1,2,3]
4    3     [1,2,3,4]
0    0     [0,1,2,3,4] 

Example 3:

Input: nums = [1], index = [0]

Output: [1]

Constraints:

Solution

import java.util.ArrayList;
import java.util.List;

public class Solution {
    public int[] createTargetArray(int[] nums, int[] index) {
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < nums.length; i++) {
            list.add(index[i], nums[i]);
        }
        int[] target = new int[list.size()];
        for (int i = 0; i < target.length; i++) {
            target[i] = list.get(i);
        }
        return target;
    }
}