leetcodehot100 矩阵置零

额外使用一个boolean变量用来判断第一列是否为零。另外第一行除了第一个用来标记当前的列是否为零,第一列用来标记当前行是否标记为零

class Solution {

public void setZeroes(int[][] matrix) {

boolean isAllZero = false;//判断第一列是否存在零

for(int i = 0;i<matrix.length;i++){//将记录所有应该置零的地方

for(int j = 0;j<matrix[0].length;j++){

if(matrix[i][j]==0){

if(j==0){

isAllZero = true;

}else{

matrix[i][0] = 0;

matrix[0][j] = 0;

}

}

}

}

for(int i = 1;i<matrix.length;i++){

for(int j = 1;j<matrix[0].length;j++){

if(matrix[i][0]==0||matrix[0][j]==0){

matrix[i][j] = 0;

}

}

}

for(int i = 0;i<matrix[0].length;i++){

if(matrix[0][0]==0){

matrix[0][i] =0;

}

}

if(isAllZero){

for(int i = 0;i<matrix.length;i++){

matrix[i][0] =0;

}

}

}

}

相关推荐
LGL6030A2 小时前
算法题实战积累(3)——方块转换(C语言)
c语言·算法
一条星星鱼2 小时前
深度学习是如何收敛的?梯度下降算法原理详解
人工智能·深度学习·算法
长路归期无望5 小时前
C语言小白实现多功能计算器的艰难历程
c语言·开发语言·数据结构·笔记·学习·算法
MobotStone6 小时前
AI训练的悖论:为什么越追求准确率越会产生幻觉?
算法
怀旧,8 小时前
【C++】26. 智能指针
开发语言·c++·算法
Haooog8 小时前
654.最大二叉树(二叉树算法)
java·数据结构·算法·leetcode·二叉树
Swift社区8 小时前
LeetCode 392 判断子序列
算法·leetcode·职场和发展
芒果量化8 小时前
ML4T - 第7章第8节 利用LR预测股票价格走势Predicting stock price moves with Logistic Regression
算法·机器学习·线性回归
东方芷兰8 小时前
JavaWeb 课堂笔记 —— 20 SpringBootWeb案例 配置文件
java·开发语言·笔记·算法·log4j·intellij-idea·lua
Diligence8159 小时前
最优化方法
算法