LeetCode JavaScript 1389. Create Target Array in the Given Order

371 阅读1分钟

LEETCODE: 1389. Create Target Array in the Given Order

1.思路:

输入是两个数组 nums index, index数组决定nums数组元素在结果数组中的位置。

所以可以理解题目是在一个空数组中按指定位置插入元素。

2.涉及到的知识点:

Array.splice(index,num,element)

splice函数参数分别是 插入位置,删除元素个数,添加的元素

3.代码

var createTargetArray = function(nums, index) {
    let res = [];
    let idx = 0;
    for(let x of index){
        res.splice(x,0,nums[idx++]);
    }
    return res;
};

4.时间复杂度&空间复杂度

  • Time Complexity:o(n^2)
    n是输入数组的长度,存在一个循环n次,而每次splice的操作worst case o(n),best case o(1) 。
  • Space Complexity:o(1)