题目链接:https://oj.leetcode.com/problems/set-matrix-zeroes/
Given a m x n matrix,
 if an element is 0, set its entire row and column to 0. Do it in place.
一个个找肯定会超时,我们可以分别用一个行向量和一个列向量进行维护。这样O(m*n) 能出来
class Solution {
public:
    void setZeroes(vector<vector<int> > &matrix) {
        bool row[matrix.size()];
        bool col[matrix[0].size()];
        memset(row,false,sizeof(row));
        memset(col,false,sizeof(col));
        for(int i=0;i<matrix.size();i++)
        	for(int j=0;j<matrix[0].size();j++)
        	{
        		if(matrix[i][j]==0)
        		{
        			row[i]=true;
        			col[j]=true;
        		}
        	}
        for(int i=0;i<matrix.size();i++)
        	for(int j=0;j<matrix[0].size();j++)
        	{
        		if(row[i]==true||col[j]==true)
        		{
        			matrix[i][j]=0;
        		}
        	}
    }
};JavaScript权威指南第03章 类型、值和变量(2),布布扣,bubuko.com
原文地址:http://blog.csdn.net/huangbin10025/article/details/27981227