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

消耗时间和内存情况:

相关推荐
dy17171 小时前
element-plus表格默认展开有子的数据
前端·javascript·vue.js
焦耳加热3 小时前
阿德莱德大学Nat. Commun.:盐模板策略实现废弃塑料到单原子催化剂的高值转化,推动环境与能源催化应用
人工智能·算法·机器学习·能源·材料工程
wan5555cn4 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
u6064 小时前
常用排序算法核心知识点梳理
算法·排序
一朵梨花压海棠go6 小时前
html+js实现表格本地筛选
开发语言·javascript·html·ecmascript
蒋星熠6 小时前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
小欣加油7 小时前
leetcode 面试题01.02判定是否互为字符重排
数据结构·c++·算法·leetcode·职场和发展
3Cloudream7 小时前
LeetCode 003. 无重复字符的最长子串 - 滑动窗口与哈希表详解
算法·leetcode·字符串·双指针·滑动窗口·哈希表·中等
王璐WL7 小时前
【c++】c++第一课:命名空间
数据结构·c++·算法
一只小风华~7 小时前
Vue: Class 与 Style 绑定
前端·javascript·vue.js·typescript·前端框架