力扣热题100_普通数组_73_矩阵置零

文章目录


题目链接

73.矩阵置零

给定一个 m x n 的矩阵,如果一个元素为 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]]

解题思路

矩阵

1.遍历矩阵,记录每行每列出现的0

2.将记录每行每列的数据,行列都重新赋值为0

解题代码

python 复制代码
class Solution:
    def setZeroes(self, matrix: List[List[int]]) -> None:
        if not matrix or not matrix[0]:
            return False
        M, N = len(matrix), len(matrix[0])
        row, col = set(), set()
        for i in range(M):
            for j in range(N):
                if matrix[i][j] == 0:
                    row.add(i)
                    col.add(j)
        for i in range(M):
            for j in range(N):
                if i in row or j in col:
                    matrix[i][j] = 0
        return matrix
相关推荐
人道领域2 分钟前
【LeetCode刷题日记】18.四数之和
算法·leetcode·面试
Omics Pro6 分钟前
斯坦福:强化学习生物约束型虚拟细胞建模
人工智能·深度学习·算法·机器学习·计算机视觉·数据挖掘·数据分析
im_AMBER9 分钟前
Leetcode 156 旋转图像 | 矩阵置零
javascript·数据结构·算法·leetcode
papership13 分钟前
【入门级-数据结构-4、简单图:图的定义与相关概念】
数据结构·算法
计算机安禾18 分钟前
【数据结构与算法】第46篇:算法思想(一):递归与分治
c语言·数据结构·c++·算法·visualstudio·图论·visual studio code
Sirens.19 分钟前
七大经典排序算法:原理、实现与复杂度分析
java·数据结构·算法·排序算法
wfbcg25 分钟前
每日算法练习:LeetCode 54. 螺旋矩阵 ✅
算法·leetcode·矩阵
黎阳之光28 分钟前
【从虚拟到实体:黎阳之光实时三维重构,开启AI空间智能新纪元
大数据·人工智能·算法·安全·数字孪生
jghhh0135 分钟前
基于主从博弈的主动配电网阻塞管理:MATLAB实现
算法·matlab
feng_you_ying_li38 分钟前
C++11,lambda,包装器
开发语言·数据结构·c++