leetcode:73. 矩阵置零(数组)

题目:

在这里插入图片描述

分析:

我是弟弟。遇到0把第一行,第一列的置为0即可。

代码:

 vector<vector<int> > m;
 int k1=0;//第一行 
 int k2=0;//第一列 
 //列 
 for(int i=0;i<m.size();i++) 
 {
  if(m[i][0]==0){
   k2=1;break;
  }
 } 
 for(int i=0;i<m[0].size();i++)
 {
  if(m[0][i]==0){
   k1=1;break;
  }
 }
 for(int i=1;i<m.size();i++)
 for(int j=0;j<m[0].size();j++)
 {
  if(m[i][j]==0) {
   m[i][0]=0;
   m[0][j]=0;
  }
 }
 //列 
 for(int i=1;i<m[0].size();i++)
 {
  if(m[0][i]==0)
  {
   for(int j=0;j<m.size();j++) m[j][i]=0;
   } 
 }
 //行
 for(int i=1;i<m.size();i++)
 {
  if(m[i][0]==0) for(int j=0;j<m[0].size();j++) m[i][j]=0;
 }
 //k1  k2 
 if(k2)
 {
  for(int i=1;i<m.size();i++) m[i][0]=0;
 }
 if(k1)
 {
  for(int j=0;j<m[0].size();j++) m[0][j]=0;
 }
发布了335 篇原创文章 · 获赞 235 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42721412/article/details/105389569
今日推荐