二维矩阵置零

一个二维矩阵,如果矩阵有元素为0,就把对应的行和列上面的元素都置为0。

class Solution {
public:
    void setZeroes(vector<vector<int> > &matrix) {
        int m = matrix.size();
        int n = matrix[0].size();
        vector<bool>rowRecord(m);
        vector<bool>colRecord(n);
        for(int i = 0; i<m;i++)
         {
            for(int j = 0;j<n;j++)
                {
                if(matrix[i][j]==0)
                    {
                    rowRecord[i]= true;
                    colRecord[j] = true;
                }
            }
        }
        for(int i = 0;i<m;i++)
            {
            for(int j =0;j<n;j++)
                {
                if(rowRecord[i]==true)
                    matrix[i][j]=0;
                else if(colRecord[j]==true)
                    matrix[i][j]=0;
            }
        }
    }
};

  

posted @ 2016-08-15 14:00  圆滚滚的小峰峰  阅读(360)  评论(0编辑  收藏  举报