qidao123.com技术社区-IT企服评测·应用市场

标题: 力扣top100 矩阵置零 [打印本页]

作者: 我可以不吃啊    时间: 前天 18:17
标题: 力扣top100 矩阵置零

开发数组来标记元素为0的行和列,然后将对应的行和列的元素全部置为0;
  1. class Solution {
  2. public:
  3.     void setZeroes(vector<vector<int>>& matrix) {
  4.         int n = matrix.size();
  5.         int m = matrix[0].size();
  6.         vector<int> l(m),r(n);
  7.         for(int i = 0;i<n;i++){
  8.             for(int j =0;j<m;j++){
  9.                 if(matrix[i][j]==0) l[j]=r[i]=1;
  10.             }
  11.         }
  12.         for(int i = 0;i<n;i++){
  13.             for(int j =0;j<m;j++){
  14.                 if(r[i]||l[j])
  15.                     matrix[i][j]=0;
  16.             }      
  17.         }
  18.     }
  19. };
复制代码
时间复杂度:由于用了两层for循环以是是O(mn)
空间复杂度:开发了两个数组,是O(m+n)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/) Powered by Discuz! X3.4