当前位置: 首页 > 后端技术 > Python

力扣-1389.按确定顺序创建目标数组【Python】

时间:2023-03-26 00:52:08 Python

LeetCode1389.按给定顺序创建目标数组按确定顺序创建目标数组【简单】【Python】numodeindex.Integersarray.Glemsarraysofintegers你的任务是根据以下规则创建目标数组:初始目标数组为空。从左到右读取nums[i]和index[i],在索引index[i]处插入目标数组中的值nums[i]。重复上一步,直到nums和index中没有要读取的元素。返回目标数组。保证插入操作有效。例1:输入:nums=[0,1,2,3,4],index=[0,1,2,2,1]输出:[0,4,1,3,2]解释:numsindextarget00[0]11[0,1]22[0,1,2]32[0,1,3,2]41[0,4,1,3,2]示例2:输入:nums=[1,2,3,4,0],index=[0,1,2,3,0]输出:[0,1,2,3,4]解释:numsindextarget10[1]21[1,2]32[1,2,3]43[1,2,3,4]00[0,1,2,3,4]示例3:输入:nums=[1],index=[0]Output:[1]Constraints:1<=nums.length,index.length<=100nums.length==index.length0<=nums[i]<=1000<=index[i]<=i问题Leetcode给你两个整数数组nums和index,你需要根据以下规则创建目标数组:目标数组target最初是空的。从左到右依次读取nums[i]和index[i],在目标数组的下标index[i]处插入值nums[i]。重复上一步,直到nums和index都没有要读取的元素。请返回目标数组。标题保证数字插入位置始终存在。示例1:输入:nums=[0,1,2,3,4],index=[0,1,2,2,1]输出:[0,4,1,3,2]解释:numsindextarget00[0]11[0,1]22[0,1,2]32[0,1,3,2]41[0,4,1,3,2]示例2:输入:nums=[1,2,3,4,0],index=[0,1,2,3,0]输出:[0,1,2,3,4]解释:numsindextarget10[1]21[1,2]32[1,2,3]43[1,2,3,4]00[0,1,2,3,4]示例3:输入:nums=[1],index=[0]输出:[1]提示:1<=nums.length,index.length<=100nums.length==index.length0<=nums[i]<=1000<=index[i]<=i思路数组时间复杂度:O(n),n为index的长度,nums的长度与index相同。空间复杂度:O(n),其中n是索引的长度。Python3代码fromtypingimportListclassSolution:defcreateTargetArray(self,nums:List[int],index:List[int])->List[int]:target=[]foriinrange(len(index)):target.insert(index[i],nums[i])#insert(位置,值)returntargetGitHub链接Python