073 Set Matrix Zeroes 矩阵置零
2024-08-31 07:17:08
给定一个 m x n 的矩阵,如果一个元素为 0 ,则将这个元素所在的行和列都置零。
你有没有使用额外的空间?
使用 O(mn) 的空间不是一个好的解决方案。
使用 O(m + n) 的空间有所改善,但仍不是最好的解决方案。
你能设计一个使用恒定空间的解决方案吗?
详见:https://leetcode.com/problems/set-matrix-zeroes/description/
Java实现:
class Solution {
public void setZeroes(int[][] matrix) {
int m=matrix.length;
int n=matrix[0].length;
boolean rowZero=false;
boolean colZero=false;
for(int j=0;j<n;++j){
if(matrix[0][j]==0){
rowZero=true;
}
}
for(int i=0;i<m;++i){
if(matrix[i][0]==0){
colZero=true;
}
}
for(int i=1;i<m;++i){
for(int j=1;j<n;++j){
if(matrix[i][j]==0){
matrix[i][0]=0;
matrix[0][j]=0;
}
}
}
for(int i=1;i<m;++i){
for(int j=1;j<n;++j){
if(matrix[i][0]==0||matrix[0][j]==0){
matrix[i][j]=0;
}
}
}
if(rowZero){
for(int j=0;j<n;++j){
matrix[0][j]=0;
}
}
if(colZero){
for(int i=0;i<m;++i){
matrix[i][0]=0;
}
}
}
}
参考:https://www.cnblogs.com/grandyang/p/4341590.html
最新文章
- windows下安装php5.5的redis扩展
- 在iframe中获取本iframe DOM引用
- 【caffe】loss function、cost function和error
- Nginx配置(日志服务器中关于日志的产生)
- 【转】Struts1.x系列教程(6):Bean标签库
- JAVA-- M选N的组合算法
- Self和Super的用法
- 转	git使用命令, 特别:git checkout -b a 与 git branch a区别
- PAT1015. Reversible Primes
- asp.net中分页与存储过程的一些总结
- Intellij 导入play framework 项目
- 实现android支持多线程断点续传下载器功能
- (转)ASP.net的url重写
- poj 2031 Building a Space Station【最小生成树prime】【模板题】
- 【转载】CentOS 6.4下PXE+Kickstart无人值守安装操作系统
- SSM+Maven+MySQL实现简易的挂机修仙页游
- [IOI2007] sails 船帆
- 被sleep开了个小玩笑
- 【云服务器部署】---Linux下安装nginx
- gitlab runner安装与使用
热门文章
- listen 76
- nginx的fastcgi_param参数详解
- 文章预告的自我挖坑系列——D3.js 系列之星光闪烁
- ACM学习历程——HDU4814 Golden Radio Base(数学递推) (12年成都区域赛)
- ACM学习历程—ZOJ3471 Most Powerful(dp &;&; 状态压缩 &;&; 记忆化搜索 &;&; 位运算)
- C++ STL std::wstring_convert处理UTF8
- mac下nginx的安装
- 把myeclipse中的web项目导入eclipse中不能编程web项目的解决办法
- cocos2dx unzip、createDir
- 排名Top 16的Java实用类库