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

力扣hot100 矩阵置零 标识位

Problem: 73. 矩阵置零
在这里插入图片描述

文章目录

  • 思路
  • 复杂度
  • Code

思路

👨‍🏫 参考

在这里插入图片描述

复杂度

时间复杂度: O ( n m ) O(nm) O(nm)

空间复杂度: O ( 1 ) O(1) O(1)

Code

class Solution {public static void setZeroes(int[][] matrix)    {int n = matrix.length;if (n == 0)return;int m = matrix[0].length;int row = 1;//记录第一行是否有 0 int col = 1;//记录第一列是否有 0for (int i = 0; i < m; i++)if (matrix[0][i] == 0)row = 0;for (int i = 0; i < n; i++)if (matrix[i][0] == 0)col = 0;for (int i = 0; i < n; i++)for (int j = 0; j < m; j++){if (matrix[i][j] == 0){// 使用当前行首和列首记录当前行列是否需要置零matrix[i][0] = 0;matrix[0][j] = 0;}}// 根据行首列首 标识位 置0for (int i = 1; i < n; i++)if (matrix[i][0] == 0)Arrays.fill(matrix[i], 0);for (int i = 1; i < m; i++)if (matrix[0][i] == 0)for (int j = 0; j < n; j++)matrix[j][i] = 0;// 最后再处理第一行和第一列if (row == 0)Arrays.fill(matrix[0], 0);if (col == 0){for (int i = 0; i < n; i++) {matrix[i][0] = 0;}}}
}
http://www.lryc.cn/news/289367.html

相关文章:

  • Android App开发-简单控件(3)——常用布局
  • Linux使用二进制包安装MySQL
  • 【vue3-pbstar-admin】一款基于vue3和nodejs的简洁后台管理系统
  • 顺序表和链表【数据结构】【基于C语言实现】【一站式速通】
  • SpringBoot 有什么优点?
  • 扫地机器人(二分算法+贪心算法)
  • Unity中创建Ultraleap 3Di交互项目
  • 【Matlab】音频信号分析及FIR滤波处理——凯泽(Kaiser)窗
  • C数据类型
  • JAVA和Go的不解之缘
  • (免费领源码)java#SSM#MySQL汽车车辆管理系统68424-计算机毕业设计项目选题推荐
  • 25考研每日的时间安排
  • 小程序直播项目搭建
  • 《Python 简易速速上手小册》第10章:Python 项目实战(基于最新版 Python3.12 编写)
  • 防御保护第六天笔记
  • 【yaml 文件使用】pytest+request 框架中 yaml 配置文件使用
  • 浅析Redis②:命令处理之epoll实现(中)
  • react如果创建了类似于 Icketang元素,那么该如何实现 Icketang类
  • 「数字化转型」企业架构:成功业务转型的关键
  • AI开启手机摄影新时代:三星Galaxy S24 Ultra影像解读
  • Linux ---- Shell编程之函数与数组
  • Python系列(9)—— 比较运算符
  • uni-app h5对接 thinkphp5接口跨域
  • react-jss书写样式
  • Oracle PL/SQL Programming 第3章:Language Fundamentals 读书笔记
  • 【Spring Boot 3】【@Scheduled】动态修改定时任务时间
  • WordPress如何自定义日期和时间格式?附PHP日期和时间格式字符串
  • log4j2 配置入门介绍
  • 深入Pyecharts:桑基图绘制与炫酷效果实战【第38篇—python:桑基图】
  • RBD —— 不同材质破碎