力扣:73. 矩阵置零(Python3)

题目:

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

来源:力扣(LeetCode)

链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

示例:

示例 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行和1列记录哪些行哪些列需要置0。

代码:

python 复制代码
class Solution:
    def setZeroes(self, matrix: List[List[int]]) -> None:
        """
        Do not return anything, modify matrix in-place instead.
        """
        row = []
        col = []
        for indexr, r in enumerate(matrix):
            for indexc, c in enumerate(r):
                if c == 0:
                    if indexr not in row:
                        row.append(indexr)
                    if indexc not in col:
                        col.append(indexc)
        for r in row:
            matrix[r] = [0] * len(matrix[0])
        for c in col:
            for r in range(len(matrix)):
                matrix[r][c] = 0
相关推荐
Yupureki4 分钟前
《C++实战项目-高并发内存池》8. 最终性能优化与测试
c语言·开发语言·数据结构·c++·算法·性能优化
qq_380651337 分钟前
xu#True
python
DeepModel9 分钟前
【概率分布】均匀分布的原理、推导与Python实现
python·算法·概率论
一叶落43810 分钟前
LeetCode 74 | 搜索二维矩阵(C语言版题解)
c语言·数据结构·c++·算法·leetcode·矩阵·动态规划
罗湖老棍子10 分钟前
星际信号塔 —— 单调栈经典应用详解
数据结构·算法·单调栈
wmfglpz8813 分钟前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
iAkuya13 分钟前
(leetcode)力扣100 96.只出现一次的数字(位运算)
算法·leetcode·职场和发展
zzb158015 分钟前
Agent学习-Reflection框架
java·人工智能·python·学习·ai
2301_7644413316 分钟前
使用python实现脉冲神经网络,用于分类任务
python·神经网络·分类
Tisfy17 分钟前
LeetCode 1622.奇妙序列:懒更新
数学·算法·leetcode·题解·设计