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

JAVA-矩阵置零

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。
在这里插入图片描述
思路:
找到0的位置,把0出现的数组的其他值夜置为0
需要额外空间方法:
1、定义两个布尔数组标记二维数组中行和列0出现的位置,标记在布尔数组中。
2、在遍历二维数组,把行和列0出现的位置都重置为0.

class Solution {public void setZeroes(int[][] matrix) {/** 如果数组中包含0,就把这个里面的数都设置为0关键在于如何把0标注以及如何重置0*/int rows = matrix.length;int cols = matrix[0].length;boolean [] rowsZero = new boolean[rows];boolean [] colsZero = new boolean[cols];for (int i = 0; i < rows; i++){for (int j = 0; j < cols; j ++) {if(matrix[i][j] == 0) {rowsZero[i] = true;colsZero[j] = true;}}}for (int i = 0; i < rows; i++){for (int j = 0; j < cols; j ++) {if(rowsZero[i] || colsZero[j]){matrix[i][j] = 0;}}}}
}
http://www.lryc.cn/news/385994.html

相关文章:

  • [信号与系统]模拟域中的一阶低通滤波器和二阶滤波器
  • Mac环境 aab包转apks,并安装apks
  • 银河麒麟V10 SP1.1操作系统 离线安装 nginx1.21.5、redis 服务
  • ios swift5 视频播放 播放视频失败 无法播放HEVC (H.265) 格式的视频 H.264格式的可以播放
  • 网工内推 | 网络工程师,IE认证优先,最高18k*14薪,周末双休
  • 【Qt】QMessageBox 各种对话框的默认显示效果
  • 一文弄懂线性回归模型
  • uniApp获取实时定位
  • linux的source命令
  • 特种作业操作证(焊接与热切割作业)2024年理论考试题库。
  • 免交互和嵌入执行模式
  • Hadoop版本演变、分布式集群搭建
  • 【Qt C++实现绘制仪表盘】
  • 一文看懂LLaMA 2:大型多模态模型的新里程碑
  • 基于Spring Boot构建淘客返利平台
  • Qt—贪吃蛇项目(由0到1实现贪吃蛇项目)
  • Java导出Excel并邮件发送
  • 【课程总结】Day12:YOLO的深入了解
  • 保护隐私,释放智能:使用LangChain和Presidio构建安全的AI问答系统
  • 【高考志愿】自动化
  • 技巧类题目
  • Vue3自定义指令参数修饰符值(3)
  • HTML(23)——垂直对齐方式
  • linux查看二进制文件
  • 营销翻车,杜国楹出面道歉,小罐茶的“大师作”故事仓皇结尾
  • linux server下人脸检测与识别服务程序的系统架构设计
  • 安装CLion配置opencv和torch环境
  • [leetcode]number-of-longest-increasing-subsequence
  • [MYSQL] MYSQL库的操作
  • 数字黄金 vs 全球计算机:比特币与以太坊现货 ETF 对比