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;

}

}

}

}

相关推荐
碧海银沙音频科技研究院7 分钟前
通话AEC与语音识别AEC的软硬回采链路
深度学习·算法·语音识别
csdn_aspnet1 小时前
Python 算法快闪 LeetCode 编号 70 - 爬楼梯
python·算法·leetcode·职场和发展
m0_629494734 小时前
LeetCode 热题 100-----26.环形链表 II
数据结构·算法·leetcode·链表
壹号用户4 小时前
用队列实现栈
数据结构·算法
做人求其滴4 小时前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
daad7774 小时前
记一组无人机IMU传感器数据
算法
计算机安禾4 小时前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法
小O的算法实验室4 小时前
2026年KBS,流形感知强化学习差分进化算法+不规则3D无人机路径规划,深度解析+性能实测
算法·智能算法·智能算法改进
玖釉-5 小时前
C++ 中的循环语句详解:while、do...while、for、嵌套循环与循环控制
开发语言·c++·算法