leetcode73-矩阵置零

leetcode 73

思路

  • 记录 0 元素的位置:遍历整个矩阵,找出所有值为 0 的元素,并将它们的坐标记录在数组zeroPosition中
  • 置零操作:遍历记录的所有 0 元素位置,将每个位置对应的行和列的所有元素置为 0
具体步骤
  • 初始化变量:获取矩阵的行数aLen和列数bLen,并创建空数组zeroPosition来存储 0 元素的坐标
  • 查找 0 元素:使用双重循环遍历矩阵,当发现元素为 0 时,将其行列坐标i, j存入zeroPosition
  • 置零操作:遍历zeroPosition数组,对每个坐标x, y,将第x行和第y列的所有元素置为 0

实现

js 复制代码
var setZeroes = function (matrix) {
  const aLen = matrix.length;
  const bLen = matrix[0].length;
  const zeroPosition = []; // 0的位置

  // 查找为0元素的坐标
  for (let i = 0; i < aLen; i++) {
    for (let j = 0; j < bLen; j++) {
      if (matrix[i][j] === 0) {
        zeroPosition.push([i, j])
      }
    }
  }
  // 设置0操作
  for (let i = 0; i < zeroPosition.length; i++) {
    const x = zeroPosition[i][0] 
    const y = zeroPosition[i][1]
    for (let j = 0; j < aLen; j++) {
      matrix[j][y] = 0
    }
    for (let j = 0; j < bLen; j++) {
      matrix[x][j] = 0
    }
  }
  return matrix
};
相关推荐
变量未定义~17 分钟前
单调栈-四元组问题
数据结构·算法
退休倒计时33 分钟前
【每日一题】LeetCode 78. 子集 TypeScript
算法·leetcode·typescript
旖-旎37 分钟前
《LeetCode 978 最长湍流子数组 || LeetCode 139 单词拆分》
c++·算法·leetcode·动态规划
USB_ABC2 小时前
郑州建业地产:高清音视频矩阵构筑智慧社区全域物联管控体系
矩阵·音视频
拂拉氏2 小时前
【知识讲解】 红黑树的删除讲解
数据结构·算法·红黑树
USB_ABC2 小时前
济南航天五院:高清数字矩阵赋能卫星研发数据可视化精准管控
矩阵·音视频
学究天人2 小时前
数学公理体系大全:第四章 ZFC公理的形式化与构造演算
线性代数·数学建模·矩阵·动态规划·图论·抽象代数·拓扑学
小七在进步2 小时前
数据结构:用栈实现队列
开发语言·数据结构
2301_800256113 小时前
数据结构基础hw9判断选择题、hw7编程题、hw12编程题
数据结构·算法
小七在进步3 小时前
数据结构:用队列实现栈
开发语言·数据结构