其他分享
首页 > 其他分享> > 0101 lc.2022数组

0101 lc.2022数组

作者:互联网

2022 新年快乐!!!

lc.2022 一维数组转二维数组

给你一个下标从 0 开始的一维整数数组 original 和两个整数 m 和 n 。你需要使用 original 中 所有 元素创建一个 m 行 n 列的二维数组。
original 中下标从 0 到 n - 1 (都 包含 )的元素构成二维数组的第一行,下标从 n 到 2 * n - 1 (都 包含 )的元素构成二维数组的第二行,依此类推。
请你根据上述过程返回一个 m x n 的二维数组。如果无法构成这样的二维数组,请你返回一个空的二维数组。

class Solution {
public:
    vector<vector<int>> construct2DArray(vector<int>& original, int m, int n) {
        vector<vector<int>> a;
        if(original.size() != m*n){
            return a;
        }
        for(auto it = original.begin();it != original.end();it += n){
            a.emplace_back(it,it+n);
        }
        return a;
    }    
};

for的条件可以用vector值顺推。

emplace_back 不同于push_back ,不需要左值,直接可以传入,但是位置固定,无法更改。

标签:下标,0101,back,二维,vector,数组,original,lc.2022
来源: https://blog.csdn.net/qq_52138199/article/details/122265782