这里学习一下vector<vector<int> >的输入方法:
需要在新建一个变量vector<int> v
然后v.push_back();
之后把ans.push_back(v);
不要忘记每次清空v:
class Solution {
public:
vector<vector<int>> matrixReshape(vector<vector<int>>& nums, int r, int c) {
int r1=nums.size();
int c1=nums[0].size();
if(r1*c1!=r*c)
return nums;
vector<int> a;
for(int i=0;i<r1;i++){
for(int j=0;j<c1;j++){
a.push_back(nums[i][j]);
}
}
vector<vector<int> > ans;
vector<int> v;
int k=0;
for(int i=0;i<r;i++){
v.clear();
for(int j=0;j<c;j++){
v.push_back(a[k++]);
}
ans.push_back(v);
}
return ans;
}
};
本文介绍了一种使用C++实现的矩阵重塑方法,通过遍历原始矩阵将元素存储到一维数组中,再按指定行数和列数创建新的二维向量。文章详细展示了如何进行向量的输入和重塑过程。
217

被折叠的 条评论
为什么被折叠?



