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

消耗时间和内存情况:

相关推荐
星之卡比*18 分钟前
前端知识点---闭包(javascript)
开发语言·前端·javascript
东方芷兰27 分钟前
JavaWeb 课堂笔记 —— 03 Vue
java·前端·javascript·vue.js·笔记
TT哇1 小时前
【前缀和】矩阵区域和(medium)
java·线性代数·算法·矩阵
Elendill2 小时前
【算法笔记】并查集详解
笔记·python·算法
Z编程2 小时前
vue3实现markdown工具栏的点击事件监听
前端·javascript·vue.js
日升_rs2 小时前
Electron 开发:获取当前客户端 IP
前端·javascript
BanyeBirth2 小时前
C++高精度算法(加、减、乘)
开发语言·c++·算法
houliabc2 小时前
C语言个人笔记
c语言·数据结构·笔记·算法
kovli3 小时前
红宝书第六讲:作用域链与闭包:厨房里的调味料架原理
前端·javascript
独立开阀者_FwtCoder3 小时前
AI 组件库 ChatUI 3.0 正式发布!阿里再一次领先!
前端·javascript·前端框架