class Solution {
public int[][] matrixReshape(int[][] mat, int r, int c) {
// 判断给定参数的 reshape 操作是否是可行且合理的
if(r*c != mat.length*mat[0].length){
return mat;
}
int[][] res = new int[r][c];
// 分别表示结果数组的高(行)和宽(列)
int h = 0,w = 0;
for(int i=0;i<mat.length;i++){
for(int j=0;j<mat[i].length;j++){
res[h][w] = mat[i][j]; // 遍历元素将其存入res
++w; // 宽+1
if(w == c){
++h; //高+1
w = 0; //宽置为0
}
}
}
return res;
}
}
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_43598687/article/details/123137236
内容来源于网络,如有侵权,请联系作者删除!