private void rewriteColumn(int[][] matrix, int j, Set<Integer> columnsToSkip) {
    columnsToSkip.add(j);
    for (int y = 0; y < matrix[j].length; y++) {
      matrix[y][j] = 0;
    }
  }
Iterative algorithm. The complexity order of this solution in time terms is equals to O(N*M)
where N and M are the height and width of the matrix. In space terms, the complexity order of
this algorithm has a linear relation to the number of zeros in the matrix and the size of
this, at the end, equals to O(N*M) because we are using two auxiliary data structures to keep
temporal data which is going to grow following a linear relation to the matrix size.
src/main/java/com/github/pedrovgs/problem55/RewriteRowAndColumnsWithZeros.java