给定一个m×n矩阵,如果一个元素是0,则将其所在行和列全部元素变成0。
需要在原矩阵上完成操作。
样例
给出一个矩阵
[
[1, 2],
[0, 3]
]
返回
[
[0, 2],
[0, 0]
]
public class Solution {
/**
* @param matrix: A list of lists of integers
* @return: Void
*/
public void setZeroes(int[][] matrix) {
// write your code here
ArrayList<Integer> row=new ArrayList<Integer>();
ArrayList<Integer> column=new ArrayList<Integer>();
if(matrix.length==0){
return;
}
if(matrix[0].length==0)
return;
for(int i=0;i<matrix.length;i++){
for(int j=0;j<matrix[0].length;j++){
if(matrix[i][j]==0){
row.add(i);
column.add(j);
}
}
}
for(int i=0;i<matrix.length;i++){
for(int j=0;j<matrix[0].length;j++){
if(row.contains(i)||column.contains(j)){
matrix[i][j]=0;
}
}
}
}
}