Set Matrix Zeroes

来源:互联网 发布:抢魅族手机用什么软件 编辑:程序博客网 时间:2024/05/17 06:10
public class Solution {    public void setZeroes(int[][] matrix) {        if (matrix == null || matrix.length == 0 || matrix[0].length == 0)            return;        int[][] result = new int[matrix.length][matrix[0].length];        boolean[] x = new boolean[matrix.length];        boolean[] y = new boolean[matrix[0].length];        for (int i = 0; i < matrix.length; i++) {            for (int j = 0; j < matrix[0].length; j++) {                if (matrix[i][j] == 0) {                    if (x[i] != true)                        x[i] = true;                                            if (y[j] != true)                        y[j] = true;                }            }        }                for (int i = 0; i < matrix.length; i++) {            if (x[i] == true)                continue;            for (int j = 0; j < matrix[0].length; j++) {                if (y[j] == false)                    result[i][j] = matrix[i][j];            }        }        for (int i = 0; i < matrix.length; i++) {            for (int j = 0; j < matrix[0].length; j++) {                matrix[i][j] = result[i][j];            }        }            }}
最后那个双层的循环,我本来打算用maxtrix = result 这种形式,但是编译不通过,我在eclipse上试了没问题。
0 0