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

力扣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数组。

相关推荐
C蔡博士几秒前
最小生成树(MST)详解:定义、算法与核心性质
算法·贪心算法·图论·时间复杂度
北风toto3 分钟前
IDEA模块名字和文件夹名字不一样的解决方式
java·ide·intellij-idea
程途知微3 分钟前
synchronized锁升级全流程解析
java
sxtyjty3 分钟前
AtCoder Beginner Contest 450 G题题解
数学·算法·期望
ccLianLian6 分钟前
数论·快速幂和逆元
数据结构·算法
亓才孓7 分钟前
[Java笔试]易错点总结
java·开发语言
没头脑的男大8 分钟前
华为题目152乘积最大子数组
算法·华为
牢姐与蒯8 分钟前
vector的实现
数据结构
SimonKing10 分钟前
企微、QQ统统接入OpenClaw,蓄水池已满,准备养虾
java·后端·程序员
:12110 分钟前
java---过滤器,监听器
java·开发语言