【Leetcode-73.矩阵置零】

题目:

给定一个 mxn 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法**。**

示例 1:
复制代码
输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]
示例 2:
复制代码
输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]
代码实现:
复制代码
class Solution {
    public void setZeroes(int[][] matrix) {
        int m = matrix.length;
        int n = matrix[0].length;
        //使用两个数组分别记录每一行和每一列是否有0出现。
        boolean[] row = new boolean[m];
        boolean[] col = new boolean[n];
        for (int i = 0; i < m; i++){
            for(int j = 0; j < n; j++) {
                if(matrix[i][j] == 0){
                    row[i] = true;
                    col[j] = true;
                }
            }
        }
    
        for (int i = 0; i < m; i++) {
            for (int j = 0; j  < n; j++) {
                if (row[i] || col[j]) {
                    matrix[i][j] = 0;
                }
            }
        }
    }
}
相关推荐
阿Y加油吧几秒前
二刷 LeetCode:爬楼梯与杨辉三角,Java 实现复盘
java·算法·leetcode
落羽的落羽3 分钟前
【项目】C++从零实现JsonRpc框架——项目引入
linux·服务器·开发语言·c++·人工智能·算法·机器学习
凌波粒5 分钟前
LeetCode--101. 对称二叉树(二叉树)
算法·leetcode·职场和发展
不知名的忻6 分钟前
堆排序(Java)
java·数据结构·算法·排序算法
_深海凉_9 分钟前
LeetCode热题100-二叉树的最大深度
算法·leetcode·职场和发展
智者知已应修善业19 分钟前
【51单片机独立按键和定时器中断的疑惑验证】2023-11-2
c++·经验分享·笔记·算法·51单片机
折翅嘀皇虫21 分钟前
【无标题】steal_work_thread_pool
服务器·前端·算法
zzzsde21 分钟前
【Linux】线程概念与控制(3):线程ID&&C++封装线程
linux·运维·服务器·开发语言·算法
handler0130 分钟前
滑动窗口(同向双指针)算法:模板与例题解析
c语言·c++·笔记·算法·蓝桥杯·双指针·滑动窗口
Brilliantwxx33 分钟前
【算法题】基础计算器的不同实现方式
c++·算法