LeetCode面试题 01.08. 零矩阵
作者:互联网
https://leetcode.cn/problems/zero-matrix-lcci/
class Solution {
public void setZeroes(int[][] matrix) {
int M=matrix.length;
//获取二维数组中一维数组的长度
int N=matrix[0].length;
int[][] newMat=new int[M][N];
//把旧数组复制到新数组中
for(int i=0;i<M;i++){
for(int j=0;j<N;j++){
newMat[i][j]=matrix[i][j];
}
}
//旧数组该变的地方让新数组对应的变,旧数组不动,这样才知道哪些地方本来是0
for(int i=0;i<M;i++){
for(int j=0;j<N;j++){
if(matrix[i][j]==0){
for(int p=0;p<N;p++){
newMat[i][p]=0;
}
for(int q=0;q<M;q++){
newMat[q][j]=0;
}
}
}
}
//新数组修改完成后重新复制给旧数组
for(int i=0;i<M;i++){
for(int j=0;j<N;j++){
matrix[i][j]=newMat[i][j];
}
}
}
}
标签:复制到,面试题,matrix,int,length,数组,01.08,LeetCode 来源: https://www.cnblogs.com/sherryyuan/p/16527333.html