链接: https://oj.leetcode.com/problems/set-matrix-zeroes/
把矩阵中的零全部投影到第一行和第一列..
第一行和第一列中的零要单独考虑
class Solution { public: void setZeroes(vector<vector<int> > &matrix) { bool row=false,col=false; for(int i=0;i<matrix[0].size();i++) if(matrix[0][i]==0) { row=true; break; } for(int i=0;i<matrix.size();i++) if(matrix[i][0]==0) { col=true; break; } for(int i=1;i<matrix.size();i++) { for(int j=1;j<matrix[i].size();j++) { if(matrix[i][j]==0) { matrix[i][0]=0; matrix[0][j]=0; } } } for(int i=1;i<matrix.size();i++) { for(int j=1;j<matrix[i].size();j++) { if(matrix[i][0]==0||matrix[0][j]==0) matrix[i][j]=0; } } if(row) for(int i=0;i<matrix[0].size();i++) matrix[0][i]=0; if(col) for(int i=0;i<matrix.size();i++) matrix[i][0]=0; } };