博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Set Matrix Zeroes
阅读量:5146 次
发布时间:2019-06-13

本文共 1347 字,大约阅读时间需要 4 分钟。

Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.

Follow up:

Did you use extra space?

A straight forward solution using O(mn) space is probably a bad idea.
A simple improvement uses O(m + n) space, but still not the best solution.
Could you devise a constant space solution?

分析:将数组中为0元素所在的行和列都置0。首先找到这些元素,分别开两个数组记录所在行和列,将这些行和列分别置0
运行时间:87ms
 
1 class Solution { 2 public: 3     void setZeroes(vector
>& matrix) { 4 int row = matrix.size(); 5 int col = matrix[0].size(); 6 7 vector
vRow(row, 0); 8 vector
vCol(col, 0); 9 for(int i = 0; i < row; i++){10 for(int j = 0; j < col; j++){11 if(matrix[i][j] == 0){12 vRow[i] = 1;13 vCol[j] = 1;14 }15 }16 }17 for(int i = 0; i < row; i++){18 if(vRow[i] == 1){19 for(int j = 0; j < col; j++) matrix[i][j] = 0;20 }21 }22 for(int j = 0; j < col; j++){23 if(vCol[j] == 1){24 for(int i = 0; i < row; i++) matrix[i][j] = 0;25 }26 }27 return;28 }29 };

 

转载于:https://www.cnblogs.com/amazingzoe/p/4504672.html

你可能感兴趣的文章
QML学习笔记之一
查看>>
ionic2+ 基础
查看>>
MyBaits动态sql语句
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
ad logon hour
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
好玩的-记最近玩的几个经典ipad ios游戏
查看>>
tmux的简单快捷键
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
[Serializable]的应用--注册码的生成,加密和验证
查看>>
Android 官方新手指导教程
查看>>
安装 Express
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
leetcode-Sort List
查看>>
中文词频统计
查看>>
Postman-----如何导入和导出
查看>>
【Linux】ping命令详解
查看>>
Oracle中包的创建
查看>>
关于PHP会话:session和cookie
查看>>
jQuery on(),live(),trigger()
查看>>