一、问题描述
二、解题思路
思路:1.无法转换则返回原来的二维数组。
2.利用除和取余获取二维数组中的元素并存到另一个二维数组当中去。
代码如下(示例):
class Solution {
public int[][] matrixReshape(int[][] mat, int r, int c) {
//无法转换为重塑矩阵,返回原来的二维数组
if (mat.length*mat[0].length!=r*c){
return mat;
}
int[][] ints = new int[r][c];
//将原来二维数组的数据存放到矩阵当中
for (int i = 0; i < r * c; i++) {
ints[i/c][i%c] = mat[i/mat[0].length][i%mat[0].length];
}
return ints;
}
}
测试结果: