class Solution {
public:
void setZeroes(vector<vector<int>>& matrix) {
if(matrix.size()==0)
return;
int flag=0;
for(int i=0;i<matrix.size();i++)
{
for(int j=0;j<matrix[0].size();j++)
{
if(matrix[i][j]==0)
{
matrix[i][0]=0;
if(j==0)
flag=1; //标记第一列是否置零
else
matrix[0][j]=0;
}
}
}
for(int i=1;i<matrix[0].size();i++)
{
if(matrix[0][i]==0)
{
for(int j=1;j<matrix.size();j++)
matrix[j][i]=0;
}
} //col先置零
for(int i=0;i<matrix.size();i++)
{
if(matrix[i][0]==0)
{
for(int j=1;j<matrix[0].size();j++)
matrix[i][j]=0;
}
} //row置零
if(flag)
{
for(int j=0;j<matrix.size();j++)
matrix[j][0]=0;
} //第一列置零
}
};
【Array】73. Set Matrix Zeroes
猜你喜欢
转载自blog.csdn.net/leetcodecl/article/details/80850305
今日推荐
周排行