矩阵置零(中等)

可以用两个标记数组分别记录每一行和每一列是否有零出现。

首先遍历该数组一次,如果某个元素为 0,那么就将该元素所在的行和列所对应标记数组的位置置为 true。然后再次遍历该数组,用标记数组更新原数组。

java 复制代码
class Solution {
    public void setZeroes(int[][] matrix) {
        int m=matrix.length;
        int n=matrix[0].length;
        boolean[] r=new boolean[m];
        boolean[] c=new boolean[n];
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                if(matrix[i][j]==0){
                    r[i]=true;
                    c[j]=true;
                }
            }
        }
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                if(r[i]||c[j]){
                    matrix[i][j]=0;
                }
            }
        }
        
    }
}
相关推荐
Swift社区几秒前
LeetCode 470 用 Rand7() 实现 Rand10()
算法·leetcode·职场和发展
闻缺陷则喜何志丹3 分钟前
【图论 DFS 换根法】3772. 子图的最大得分|2235
c++·算法·深度优先·力扣·图论·换根法
你要飞5 分钟前
Part 2 矩阵
笔记·线性代数·考研·矩阵
一只大侠的侠5 分钟前
Python实现TTAO算法:优化神经网络中的时序预测任务
python·神经网络·算法
一条大祥脚10 分钟前
26.1.2 两个数的数位dp 分段快速幂 dp预处理矩阵系数
线性代数·矩阵
ID_180079054733 小时前
小红书笔记详情API接口基础解析:数据结构与调用方式
数据结构·数据库·笔记
千金裘换酒8 小时前
LeetCode 移动零元素 快慢指针
算法·leetcode·职场和发展
wm10438 小时前
机器学习第二讲 KNN算法
人工智能·算法·机器学习
NAGNIP9 小时前
一文搞懂机器学习线性代数基础知识!
算法
NAGNIP9 小时前
机器学习入门概述一览
算法