leetcode73矩阵置零

思路

想到的就是需要一个数组来记录是不是这行或者这列是不是有零,然后最后再扫描一遍这个矩阵

题解

借助第0行第0列来记录这个行是不是有0,这个列是不是有0

另外,这个矩阵不大,所以可能有重复的置0应该也没事。

复制代码
class Solution {
    public void setZeroes(int[][] matrix) {
        boolean row_0 = false;
        boolean column_0 = false;
        int col = matrix[0].length; //这个是列
        int row = matrix.length; //这个是行
        for (int i = 0; i < col; i++) { //判断第一行有没有0值
            if (matrix[0][i] == 0){ //第0行第i列
                row_0 = true;
                break;
            }
        }
        for (int i = 0; i < row; i++) {//判断第一列有没有0值
            if (matrix[i][0] == 0){
                column_0 = true;
                break;
            }
        }
        for (int i = 1; i < col; i++) {
            for (int j = 1; j < row; j++) {
                if (matrix[j][i] == 0){
                   matrix[0][i] = 0; //列
                   matrix[j][0] = 0; //行
                }
            }
        }
        for (int i = 1; i < col; i++) { //列
            if (matrix[0][i] == 0){
                for (int j = 1; j < row; j++) {
                    matrix[j][i] = 0;
                }
            }
        }

        for (int i = 1; i < row; i++) { //行
            if (matrix[i][0] == 0){
                for (int j = 1; j < col; j++) {
                    matrix[i][j] = 0;
                }
            }
        }
        if (column_0 == true){ //处理第一列

            for (int i = 0; i < row; i++) {
                matrix[i][0] = 0;
            }
        }
        if (row_0 == true){ //处理第一行
            for (int i = 0; i < col; i++) { //不能处理0
                matrix[0][i] = 0;
            }
        }
    }
}
相关推荐
不才小强7 分钟前
目标跟踪算法DeepSort实战
人工智能·算法·目标跟踪
代码改善世界8 分钟前
【MATLAB初阶】矩阵操作(二):矩阵的运算
android·matlab·矩阵
今日说"法"10 分钟前
线性代数与矩阵运算:AI世界的数学基石——从SVD到特征值分解的实战解析
人工智能·线性代数·矩阵
猴哥聊项目管理15 分钟前
从职能型组织到矩阵型组织的IPD转型路径
线性代数·矩阵·项目管理·项目经理·ipd流程·ipd项目管理流程·ipd流程管理
papership16 分钟前
【入门级-数学与其他:1.数及其运算:进制与进制转换:二进制、八进制、十进制、十六进制】
算法
ComputerInBook18 分钟前
数字图像处理(4版)——第 4 章——频域滤波(下)(Rafael C.Gonzalez&Richard E. Woods)
人工智能·算法·计算机视觉·频域滤波
会编程的土豆31 分钟前
【复习】二分查找
数据结构·c++·算法
Yzzz-F1 小时前
Problem - D - Codeforces
算法
chas_881 小时前
macbook air M5 32G本地跑ddtree-mlx效果
算法
programhelp_1 小时前
WeRide OA 2026 高频真题分享 & 详细备战指南
经验分享·算法·面试·职场和发展