每日一题——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]])
};

消耗时间和内存情况:

相关推荐
workflower3 小时前
单元测试-例子
java·开发语言·算法·django·个人开发·结对编程
Y42583 小时前
本地多语言切换具体操作代码
前端·javascript·vue.js
fruge4 小时前
React 2025 完全指南:核心原理、实战技巧与性能优化
javascript·react.js·性能优化
MicroTech20255 小时前
微算法科技(MLGO)研发突破性低复杂度CFG算法,成功缓解边缘分裂学习中的掉队者问题
科技·学习·算法
墨染点香5 小时前
LeetCode 刷题【126. 单词接龙 II】
算法·leetcode·职场和发展
aloha_7896 小时前
力扣hot100做题整理91-100
数据结构·算法·leetcode
etsuyou6 小时前
js前端this指向规则
开发语言·前端·javascript
Tiny番茄6 小时前
31.下一个排列
数据结构·python·算法·leetcode
挂科是不可能出现的6 小时前
最长连续序列
数据结构·c++·算法
前端小L7 小时前
动态规划的“数学之魂”:从DP推演到质因数分解——巧解「只有两个键的键盘」
算法·动态规划