[LeetCode 周赛181] 1. 按既定顺序创建目标数组(暴力、常规解法)

文章目录

    • 1. 题目来源
    • 2. 题目说明
    • 3. 题目解析
      • 方法一:暴力+常规解法

1. 题目来源

链接:5364. 按既定顺序创建目标数组

2. 题目说明

[LeetCode 周赛181] 1. 按既定顺序创建目标数组(暴力、常规解法)_第1张图片
[LeetCode 周赛181] 1. 按既定顺序创建目标数组(暴力、常规解法)_第2张图片

3. 题目解析

方法一:暴力+常规解法

观察数据范围很小暴力做就行了。采用 insert 直接插入就好了。vector 主要时间消耗再倍增扩容上,若提前开辟好空间,insert 效率还是很高的,但在此数据量很小就没这样操作。

参见代码如下:

// 执行用时 :0 ms, 在所有 C++ 提交中击败了100.00%的用户
// 内存消耗 :9.9 MB, 在所有 C++ 提交中击败了100.00%的用户

class Solution {
public:
    vector<int> createTargetArray(vector<int>& nums, vector<int>& index) {
        vector<int> vt;
        for (int i = 0; i < nums.size(); ++i) {
            int a = index[i];
            int x = nums[i];
            vt.insert(vt.begin() + a, x);
        }
        return vt;
    }
};

你可能感兴趣的:(LeetCode周赛)