Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
public class { public void setZeroes(int[][] matrix) { int flag = 1; for(int i=0; i<matrix.length; i++) { if(matrix[i][0]==0) flag = 0; for(int j=1; j<matrix[0].length; j++) { if(matrix[i][j] == 0) { matrix[i][0] = 0; matrix[0][j] = 0; } } } for(int i=matrix.length-1;i>=0;i--) { for(int j=matrix[0].length-1;j>=1;j--) { if(matrix[i][0]==0 || matrix[0][j]==0) matrix[i][j] = 0; } if(flag == 0) matrix[i][0] = 0; } } }
|
近期评论