开始刷leetcode day40:Set Matrix Zeroes
来源:互联网 发布:sas编程 编辑:程序博客网 时间:2024/05/01 10:43
Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.
click to show 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?
Java:
public class Solution {
public void setZeroes(int[][] matrix) {
int row = matrix.length;
if(row == 0) return;
int col = matrix[0].length;
if(col == 0) return;
int i=0;
boolean rowzero = false;
boolean colzero = false;
while(i<col)
{
if(matrix[0][i] == 0)
{
rowzero = true;
break;
}
i++;
}
i=0;
while(i<row)
{
if(matrix[i][0] == 0)
{
colzero = true;
break;
}
i++;
}
for(int j=1; j<row; j++)
{
for(int k=1; k<col;k++)
{
if(matrix[j][k] == 0)
{
matrix[j][0] = 0;
matrix[0][k] = 0;
}
}
}
for(int m=1; m<row; m++)
{
for(int n=1; n<col; n++)
{
if(matrix[0][n] == 0 || matrix[m][0]==0)
{
matrix[m][n] = 0;
}
}
}
i=0;
if(rowzero)
{
while(i<col)
{
matrix[0][i] = 0;
i++;
}
}
i=0;
if(colzero)
{
while(i<row)
{
matrix[i][0] = 0;
i++;
}
}
}
}
- 开始刷leetcode day40:Set Matrix Zeroes
- 开始刷leetcode day40: Search a 2D Matrix
- LeetCode: Set Matrix Zeroes
- LeetCode Set Matrix Zeroes
- [Leetcode] Set Matrix Zeroes
- LeetCode: Set Matrix Zeroes
- Leetcode: Set Matrix Zeroes
- [LeetCode] Set Matrix Zeroes
- [LeetCode]Set Matrix Zeroes
- [leetcode]Set Matrix Zeroes
- Leetcode:Set Matrix Zeroes
- LeetCode-Set Matrix Zeroes
- [leetcode] Set Matrix Zeroes
- LeetCode - Set Matrix Zeroes
- Set Matrix Zeroes leetcode
- 【Leetcode】Set Matrix Zeroes
- 【leetcode】Set Matrix Zeroes
- Leetcode: Set Matrix Zeroes
- SIFT检测特征点之找到主方向
- 在centos6上搭建git服务器
- 【牛腩新闻发布系统 一】如何高效写代码
- 使用PHP制作 简易员工管理系统之七(MVC实现用户信息增、删、改、查)
- KVC
- 开始刷leetcode day40:Set Matrix Zeroes
- 技术 blog20 之 Java正则表达式 by 八戒
- Android之各种Adapter
- 我的Java开发学习之旅------>Java使用Fork/Join框架来并行执行任务
- #leetcode#Multiply Strings
- mark—android返回键
- 《现代礼仪》总结五
- ASPxPopupControl 关闭对话框前后台用法
- KVO