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

力扣-hot100 (矩阵置零)

73. 矩阵置零

中等

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

示例 1:

img

输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]

示例 2:

img

输入: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]]

提示:

  • m == matrix.length

  • n == matrix[0].length

  • 1 <= m, n <= 200

  • -231 <= matrix[i][j] <= 231 - 1

class Solution {public void setZeroes(int[][] matrix) {int n = matrix.length;int m = matrix[0].length;// 为了不破坏原来的结构, 就是被感染成 0 的不能再去感染别的数, 只有初始为0的数才能去感染其它数int[][] copy = new int[n][m];// 初始化for(int i = 0; i < n; i ++){for(int j = 0; j < m; j ++) copy[i][j] = -1;}// O(n^3)for(int i = 0; i < n; i ++){for(int j = 0; j < m; j ++){if(matrix[i][j] == 0){// 可进行优化, 因为这里只要把行和列的下标索引记录下来就可以了for(int k = 0; k < n; k ++) copy[k][j] = 0;for(int k = 0; k < m; k ++) copy[i][k] = 0;}}}
​for(int i = 0; i < n; i ++){for(int j = 0; j < m; j ++){if(copy[i][j] == 0) matrix[i][j] = 0;}}}
}

相关文章:

  • 机器学习实操 第二部分 神经网路和深度学习 第13章 使用TensorFlow加载和预处理数据
  • 高等数学第六章---定积分(§6.2定积分在几何上的应用2)
  • Elasticsearch知识汇总之 ElasticSearch高可用方案
  • [ linux-系统 ] 常见指令2
  • 开源向量大模型推荐:2025年技术选型指南
  • 模板模式 VS 建造者模式
  • Sublime Text快速搭建Lua语言运行环境
  • 可以下载blender/fbx格式模型网站
  • 【C++游戏引擎开发】第31篇:物理引擎(Bullet)—碰撞检测系统
  • 学习Python网络爬虫的实例
  • SpringBoot 集成滑块验证码AJ-Captcha行为验证码 Redis分布式 接口限流 防爬虫
  • 数据清洗-电商双11美妆数据分析
  • Python入门(一)
  • 怎样通过API 实现python调用Chatgpt,gemini
  • 爱情的本质是什么--deepseek
  • 20250506联想Lenovo笔记本电脑的USB鼠标失效之后在WIN10下的关机的方法【触摸板被禁用】
  • Hologres x 函数计算 x Qwen3,对接MCP构建企业级数据分析 Agent
  • C++笔记-二叉搜索树(包括key,key/value搜索场景等)
  • 【SDRS】面向多模态情感分析的情感感知解纠缠表征转移
  • Ubuntu开放端口
  • “子宫内膜异位症”相关论文男性患者样本超六成?福建省人民医院发布情况说明
  • 又一日军“慰安妇”制度受害者去世,大陆登记在册幸存者仅剩7人
  • 巴基斯坦军方:印度导弹袭击已造成至少3死14伤
  • “子宫内膜异位症”相关论文男性患者样本超六成?福建省人民医院展开调查
  • 一周人物|何子彦任职光州双年展,陈意心讲述五原路往事
  • 上海今日降雨降温,节后首个工作日气温回升最高可达28℃