力扣: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
相关推荐
程序员miki几秒前
Dramatiq安装及应用(一)
python·dramatiq
HUST5 分钟前
C 语言 第八讲:VS实用调试技巧
运维·c语言·开发语言·数据结构·算法·c#
liulanba10 分钟前
深入理解 Python 异步编程:async、await 与同步函数详解
服务器·网络·python
历程里程碑14 分钟前
LeetCode128:哈希集合巧解最长连续序列
开发语言·数据结构·c++·算法·leetcode·哈希算法·散列表
@淡 定15 分钟前
Hash 索引与 B+树索引的区别与适用场景
b树·算法·哈希算法
BBB努力学习程序设计15 分钟前
从文本中精准提取手机号并脱敏:Python 正则 + 文件流的实战进阶
python
Tzarevich15 分钟前
算法效率的核心:时间复杂度与空间复杂度
javascript·算法
BBB努力学习程序设计16 分钟前
Python文件操作完全指南:读写文件与数据处理
python·pycharm
vv_Ⅸ17 分钟前
打卡day47
python
zhongtianhulian18 分钟前
陶瓷行业大会资讯:掌握行业动态,洞察未来趋势
大数据·人工智能·python