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

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

相关推荐
CUMT_DJ1 小时前
matlab计算算法的运行时间
开发语言·算法·matlab
SUPER52662 小时前
FastApi项目启动失败 got an unexpected keyword argument ‘loop_factory‘
java·服务器·前端
咕噜咕噜啦啦2 小时前
Eclipse集成开发环境的使用
java·ide·eclipse
Univin4 小时前
C++(10.4)
开发语言·数据结构·c++
KyollBM4 小时前
每日羊题 (质数筛 + 数学 | 构造 + 位运算)
开发语言·c++·算法
光军oi5 小时前
全栈开发杂谈————关于websocket若干问题的大讨论
java·websocket·apache
weixin_419658315 小时前
Spring 的统一功能
java·后端·spring
小许学java6 小时前
Spring AI-流式编程
java·后端·spring·sse·spring ai
Univin6 小时前
C++(10.5)
开发语言·c++·算法
Asmalin6 小时前
【代码随想录day 35】 力扣 01背包问题 一维
算法·leetcode·职场和发展