算法:按既定顺序创建目标数组

力扣1389

提示:

  • 1 <= nums.length, index.length <= 100
  • nums.length == index.length
  • 0 <= nums[i] <= 100
  • 0 <= index[i] <= i
题解:
java 复制代码
class Solution {
    public int[] createTargetArray(int[] nums, int[] index) {
        int[] target = new int[nums.length];
        int flag = 0;
        for(int i=0;i<nums.length;i++){
            for(int k=flag;k>index[i];k--){
                target[k] = target[k-1];
            }
            target[index[i]] = nums[i];
            
            flag++;
        }
        return target;
    }
}
思路:

双循环,需要确定target的边界,如果插入的位置小于边界,则插入位置后的数都向后移一个位置,插入位置就是index数组,插入的数就是nums数组。

相关推荐
余瑜鱼鱼鱼8 分钟前
线程和进程的区别和联系
java·开发语言·jvm
小唐同学爱学习9 分钟前
如何解决海量数据存储
java·数据库·spring boot·mysql
962464i17 分钟前
SBE(simple-binary-encoding)-Demo
java
清酒难咽18 分钟前
算法案例之分治法
c++·经验分享·算法
-凌凌漆-18 分钟前
【Java】java中throws与try catch区别
java
wen__xvn20 分钟前
代码随想录算法训练营DAY25第七章 回溯算法 part04
算法·leetcode·深度优先
代码的奴隶(艾伦·耶格尔)21 分钟前
Nginx
java·服务器·nginx
亲爱的非洲野猪23 分钟前
动态规划进阶:序列DP深度解析
算法·动态规划
zzcufo26 分钟前
多邻国第五阶段第13部分
java·开发语言·数据库
不染尘.35 分钟前
双指针算法
算法