public void setZeroes(int[][] matrix) {
		int row = matrix.length;
		if (row < 1)
			return;
		int col = matrix[0].length;
		boolean[] colRecorder = new boolean[col];
		boolean[] rowRecorder = new boolean[row];

		for (int i = 0; i < row; i++) {
			for (int j = 0; j < col; j++) {
				if (matrix[i][j] == 0) {
					rowRecorder[i] = true;
					colRecorder[j] = true;
				}
			}
		}
		for (int i = 0; i < row; i++) {
			for (int j = 0; j < col; j++) {
				if (rowRecorder[i])
					matrix[i][j] = 0;
				else if (colRecorder[j])
					matrix[i][j] = 0;
			}
		}
	}