【题目描述】
给定一个 m x n
的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。
【解答】
做法任意,我标记了化为0的行和列
class Solution {
public:
void setZeroes(vector<vector<int>>& matrix) {
int m = matrix.size();
int n = matrix[0].size();
bool r[201]={0},c[201]={0};
for (int i=0; i<m; i++)
for (int j=0; j<n; j++)
if (matrix[i][j]==0)
{
r[i]=1;
c[j]=1;
}
for (int i=0; i<m; i++)
for (int j=0; j<n; j++)
if (r[i]||c[j])
matrix[i][j]=0;
}
};