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

小黑享受思考心流: 73. 矩阵置零

小黑代码

class Solution:def setZeroes(self, matrix: List[List[int]]) -> None:"""Do not return anything, modify matrix in-place instead."""items = []m = len(matrix)n = len(matrix[0])for i in range(m):for j in range(n):if not matrix[i][j]:items.append((i, j))for item in items:x = item[0]y = item[1]for i in range(n):matrix[x][i] = 0for j in range(m):matrix[j][y] = 0return matrix

在这里插入图片描述

标记变量

class Solution:def setZeroes(self, matrix: List[List[int]]) -> None:"""Do not return anything, modify matrix in-place instead."""# 行和列数m = len(matrix)n = len(matrix[0])# 判断第一行和第一列是否有0has_zero_row = Falsehas_zero_column = Falsefor i in range(m):if not matrix[i][0]:has_zero_row = Truebreakfor i in range(n):if not matrix[0][i]:has_zero_column = Truebreak# 开始通过第一行和第一列记录该行是否置零for i in range(1, m):for j in range(1, n):if not matrix[i][j]:matrix[i][0] = 0matrix[0][j] = 0# 开始进行置零for i in range(1, m):if not matrix[i][0]:for t in range(1, n):matrix[i][t] = 0for i in range(1,n):if not matrix[0][i]:for t in range(1,m):matrix[t][i] = 0# 判断第一行和第一列是否需要置零if has_zero_row:for i in range(m):matrix[i][0] = 0if has_zero_column:for i in range(n):matrix[0][i] = 0return matrix

在这里插入图片描述

C#练习

public class Solution {public void SetZeroes(int[][] matrix) {int m = matrix.Length;int n = matrix[0].Length;// 标记变量bool rowZero = false;bool columnZero = false;// 计算标记变量for(int i = 0; i < m; i++){if(matrix[i][0]==0){rowZero = true;break;}}for(int j = 0; j < n; j++){if(matrix[0][j]==0){columnZero = true;break;}}// 开始计算为零的行列for(int i = 1; i < m; i++){for(int j = 1; j < n; j++){if(matrix[i][j]==0){matrix[i][0] = 0;matrix[0][j] = 0;}}}// 开始置零for(int i = 1; i < m; i++){if(matrix[i][0]==0){for(int j = 1; j < n; j++){matrix[i][j] = 0;}}}for(int j = 1; j < n; j++){if(matrix[0][j]==0){for(int i = 1; i < m; i++){matrix[i][j] = 0;}}}// 判断第一行和第一列是否需要置零if(rowZero){for(int i = 0; i < m; i++){matrix[i][0] = 0;}}if(columnZero){for(int j = 0; j < n; j++){matrix[0][j] = 0;}}}
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.xdnf.cn/news/2435.html

相关文章:

  • 《全球反空间能力》报告翻译——部分1
  • CISA、项目管理、信息系统项目等等电子书资料
  • ComfyUI for Windwos与 Stable Diffusion WebUI 模型共享修复
  • LeetCode热题100--438.找到字符串中所有字母异位词--中等
  • ISIS的由于L1产生的一系列问题
  • 实验:串口通信
  • 02.02、返回倒数第 k 个节点
  • 2 商户查询缓存
  • 设计一个食品种类表
  • 【算法】回溯法
  • 【锂电池剩余寿命预测】Transformer锂电池剩余寿命预测(Pytorch完整源码和数据)
  • 攻击 WordPress 目标的 5 种方法
  • AtCoder Beginner Contest 242 G - Range Pairing Query (莫队)
  • 解锁现代生活的健康密码
  • 杨洋出席青岛啤酒白啤品牌活动 共赴生活美学之旅
  • 2025年应用物理与电子电气国际会议(IACSEM 2025)
  • 【Code Sprint】第一章 从零开始
  • 【Java学习笔记】类与对象
  • 前端零基础入门到上班:【Day8】JavaScript 基础语法入门
  • 【数据可视化-38】基于Plotly得泰坦尼克号数据集的多维度可视化分析
  • 给应用加速:Spring Boot集成缓存 (Caffeine Redis) 实战
  • Maven 依赖范围(Scope)详解
  • Spring Boot中@RequestParam、@RequestBody、@PathVariable的区别与使用
  • Servlet
  • AI如何重塑DDoS防护行业?六大变革与未来展望
  • 可以隐藏列的表格
  • spark 课程总结
  • 影楼精修-皮肤瑕疵祛除算法解析
  • 安卓基础(适配器和RecyclerView )
  • 富文本展示前使用DOMPurify进行文本过滤