当前位置: 首页 > article >正文

python-leetcode-矩阵置零

73. 矩阵置零 - 力扣(LeetCode)

class Solution:
    def setZeroes(self, matrix: List[List[int]]) -> None:
        """
        Do not return anything, modify matrix in-place instead.
        """
        m, n = len(matrix), len(matrix[0])
        row_zero = False  # 记录是否需要将第一行全设为0
        col_zero = False  # 记录是否需要将第一列全设为0
    
        # 第一次遍历,记录需要设为0的行和列
        for i in range(m):
            for j in range(n):
                if matrix[i][j] == 0:
                    if i == 0:
                        row_zero = True
                    if j == 0:
                        col_zero = True
                    matrix[i][0] = 0  # 用第一列记录哪些行需要设为0
                    matrix[0][j] = 0  # 用第一行记录哪些列需要设为0
    
        # 第二次遍历,根据记录将对应的行和列设为0
        for i in range(1, m):
            for j in range(1, n):
                if matrix[i][0] == 0 or matrix[0][j] == 0:
                    matrix[i][j] = 0
    
        # 根据第一行和第一列的标记,处理第一行和第一列
        if row_zero:
            for j in range(n):
                matrix[0][j] = 0
        if col_zero:
            for i in range(m):
                matrix[i][0] = 0


http://www.kler.cn/a/503195.html

相关文章:

  • nacos环境搭建以及SpringCloudAlibaba脚手架启动环境映射开发程序
  • 当当网热销书籍数据采集与可视化分析
  • java -jar启动项目报错:XXX.jar中没有主清单属性
  • pandas与sql对应关系【帮助sql使用者快速上手pandas】
  • MySQL批量修改数据表编码及字符集为utf8mb4
  • Apache Hop从入门到精通 第二课 Apache Hop 核心概念/术语
  • 当自动包布机遇上Profinet转ModbusTCP网关,“妙啊”,工业智能“前景无限
  • SpiderFlow平台v0.5.0之引入selenium插件
  • linux 文件权限设置详解
  • 一些实用的工具
  • Termora跨平台 SSH/SFTP/Terminal 客户端工具
  • 如何给即将满的 C 盘添加磁盘空间
  • 《AI发展的双重困境:技术扩展性与用户体验的矛盾,以及AGI理想与现实的差距》
  • 重新定义数据分析:LLM如何让人专注真正的思考
  • YOLOv11 GPU环境搭建与问题分析
  • Vim复制当前文件的全路径到系统剪贴板
  • 【安全帽头盔检测】基于YOLOV11+pytorch+Flask+SpringBoot+Vue+MySQL的安全帽头盔检测识别系统
  • Docker中编码和时区设置不生效问题排查
  • 王炸组合:Dolphinscheudler 3.1.*搭配SeaT unnel2.3.*高效完成异构数据数据集成
  • docker 国内源
  • micro-app【微前端系列教程】2025最新版
  • 【LeetCode】力扣刷题热题100道(31-35题)附源码 搜索二维矩阵 岛屿数量 腐烂的橙子 课程表 实现 Trie (前缀树)(C++)
  • ANSYS Fluent学习笔记(七)求解器四部分
  • 【算法】将单链表按值划分
  • uniapp 之 uni-forms校验提示【提交的字段[‘xxx‘]在数据库中并不存在】解决方案
  • 计算机网络(五)运输层