每日一题——LeetCode1389.按既定顺序创建目标数组

方法一 splice

使用splice函数就可以在数组的指定索引位置添加元素

javascript 复制代码
var createTargetArray = function(nums, index) {
    let res=[]
    for(let i=0;i<nums.length;i++){
        res.splice(index[i],0,nums[i])
    }
    return res
};

消耗时间和内存情况:

方法二 模拟

如果res[index[i]]没有值则直接插入

如果有值则把后面元素都后移一位再插入

javascript 复制代码
var createTargetArray = function(nums, index) {
    let res=nums.map((_, i) => [nums[i], index[i]]);
    res.sort((a,b)=>{
        if(a[1]===b[1]) return -1
        return a[1]-b[1]
    })
    return res.map((_,i)=>[res[i][0]])
};

消耗时间和内存情况:

相关推荐
天真萌泪21 分钟前
JS逆向自用
开发语言·javascript·ecmascript
柳杉1 小时前
震惊!字符串还能这么玩!
前端·javascript
小月球~1 小时前
天梯赛 · 并查集
数据结构·算法
仍然.2 小时前
算法题目---模拟
java·javascript·算法
6Hzlia3 小时前
【Hot 100 刷题计划】 LeetCode 118. 杨辉三角 | C++ 动态规划题解
c++·leetcode·动态规划
我命由我123453 小时前
React - 类组件 setState 的 2 种写法、LazyLoad、useState
前端·javascript·react.js·html·ecmascript·html5·js
聊聊MES那点事3 小时前
JavaScript图表控件AG Charts使用教程:使用AG Charts React实时更新柱状图
开发语言·javascript·react.js·图表控件
潇冉沐晴4 小时前
DP——背包DP
算法·背包dp
GIOTTO情4 小时前
2026 世界互联网大会亚太峰会|AI 时代媒介投放的技术实战与算法优化
人工智能·算法
逆境不可逃4 小时前
LeetCode 热题 100 之 543. 二叉树的直径 102. 二叉树的层序遍历 108. 将有序数组转换为二叉搜索树 98. 验证二叉搜索树
算法·leetcode·职场和发展