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

73. Set Matrix Zeroes

时间:2018-07-21 14:51:11      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:span   void   return   ret   lag   class   color   mat   ++   

 1 class Solution 
 2 {
 3 public:
 4     void setZeroes(vector<vector<int>>& matrix) 
 5     {
 6         int szrow=matrix.size();
 7         if(szrow==0)    return;
 8         int szcol=matrix[0].size();
 9         int flagrow=0,flagcol=0;
10         for(int i=0;i<szcol;i++)
11         {
12             if(matrix[0][i]==0)
13             {
14                 flagrow=1;
15                 break;
16             }
17         }
18         for(int i=0;i<szrow;i++)
19         {
20             if(matrix[i][0]==0)
21             {
22                 flagcol=1;
23                 break;
24             }
25         }
26         for(int i=1;i<szrow;i++)
27         {
28             for(int j=1;j<szcol;j++)
29             {
30                 if(matrix[i][j]==0)
31                 {
32                     matrix[0][j]=0;
33                     matrix[i][0]=0;
34                 }
35             }
36         }
37         for(int i=1;i<szrow;i++)
38         {
39             for(int j=1;j<szcol;j++)
40             {
41                 if(matrix[0][j]==0||matrix[i][0]==0)
42                     matrix[i][j]=0;
43             }
44         }
45         if(flagrow==1)
46         {
47             for(int i=0;i<szcol;i++)
48                 matrix[0][i]=0;
49         }
50         if(flagcol==1)
51         {
52             for(int i=0;i<szrow;i++)
53                 matrix[i][0]=0;
54         }
55     }
56 };

以第一行第一列为基准,存放要置为0的行列,然后单独处理第一行第一列即可。

73. Set Matrix Zeroes

标签:span   void   return   ret   lag   class   color   mat   ++   

原文地址:https://www.cnblogs.com/zhuangbijingdeboke/p/9346251.html

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