码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode No73. Set Matrix Zeroes

时间:2016-08-05 01:03:48      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:

Question:

Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.
矩阵中如果有0,则该行该列都置0

Algorithm:

遍历矩阵,用两个数组记录0元素的行下标和列下标,再将数组记录的行和列置0

Accepted Code:

class Solution {
public:
    void setZeroes(vector<vector<int>>& matrix) {
        vector<int> row;     //row
        vector<int> column;  //column
        int M=matrix.size();
        int N=matrix[0].size();
        for(int i=0;i<M;i++)
            for(int j=0;j<N;j++)
            {
                if(matrix[i][j]==0)
                {   
                    row.push_back(i);
                    column.push_back(j);
                }
            }
        for(int i=0;i<row.size();i++)
        {
            for(int j=0;j<N;j++)
                matrix[row[i]][j]=0;
        }
        for(int j=0;j<column.size();j++)
        {
            for(int i=0;i<M;i++)
                matrix[i][column[j]]=0;
        }
    }
};



leetcode No73. Set Matrix Zeroes

标签:

原文地址:http://blog.csdn.net/u011391629/article/details/52122363

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!