leetcode(js)-每日一练之 矩阵置零



1.检查并标记第一行和第一列是否有0
(firstColHasZero和firstRowHasZero)

2.忽略第一行第一列,若其余行列含有0,将其所在的行列的最左边和最上面置为0(在第一行第一列上)

3.接下来,利用第一行和第一列的标0情况,将matrix的数字标0

4.最后,处理第一行和第一列
如果firstColHasZero 等于true,将第一列全设为0
如果firstRowHasZero等于false ,将第一行全设为0

var setZeroes = function(matrix) {let firstColHasZero = false;let firstRowHasZero = false;for (let i = 0; i < matrix[0].length; i++) {if (matrix[0][i] === 0)firstRowHasZero = true;}for (let i = 0; i < matrix.length; i++) {if (matrix[i][0] === 0)firstColHasZero = true;}for (let row = 1; row < matrix.length; row++) {for (let col = 1; col < matrix[0].length; col++) {if (matrix[row][col] === 0) {matrix[row][0] = 0;matrix[0][col] = 0;}}}for (let row = 1; row < matrix.length; row++) {for (let col = 1; col < matrix[0].length; col++) {if (matrix[row][0] === 0 || matrix[0][col] === 0) {matrix[row][col] = 0;}}}if (firstRowHasZero == true) {for (let i = 0; i < matrix[0].length; i++) {matrix[0][i] = 0;}}if (firstColHasZero == true) {for (let i = 0; i < matrix.length; i++) {matrix[i][0] = 0;}}return matrix};

matrix[0].length 列数
matrix.length 行数

leetcode(js)-每日一练之 矩阵置零 题库编号 73相关推荐

  1. LeetCode 73矩阵置零74搜素二维矩阵75颜色分类

    新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...

  2. Leetcode算法Java全解答--73. 矩阵置零

    Leetcode算法Java全解答–73. 矩阵置零 文章目录 Leetcode算法Java全解答--73. 矩阵置零 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 其他 题目 给定 ...

  3. Java实现 LeetCode 73 矩阵置零

    73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ...

  4. leetcode 73 矩阵置零 Python

    矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [[1,1,1],[1,0,1],[1,1,1] ] 输出: [ ...

  5. LeetCode 73. 矩阵置零(两个标记变量)

    73. 矩阵置零 我们可以用矩阵的第一行和第一列作为两个标记数组,以达到 O(1)O(1) 的额外空间. 但这样会导致原数组的第一行和第一列被修改,无法记录它们是否原本包含 0.因此我们需要额外使用两 ...

  6. C++矩阵置零---原地算法(附三种解法)

    如题只要发现一个元素为0,那么它所在的行和列都要置零. 方法一:使用两个数组只要发现某个元素为0,就将这一行或这一列的头元素置true,然后再遍历矩阵,只要某个元素对应的行或列头元素为true,那么对 ...

  7. leetcode 73. 矩阵置零

    给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 .请使用 原地 算法. 进阶: 一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案. ...

  8. leetcode 73 矩阵置零 C++ 两种解法

    leetcode 73 两种解法~~,没有一个是我想出来的,哈哈~~ one class Solution {public:void setZeroes(vector<vector<int ...

  9. 每日一练-10-求矩阵主对角线及副对角线元素的和

    题目描述 求一个n*n的矩阵主对角线及副对角线元素的和! 分析 首先要明确什么为矩阵  由此可见,矩阵对应的为二位数组定义为a[n][n]: 什么为主对角线?主对角线就是矩阵的左上角到右下角的对角线. ...

最新文章

  1. 【UVA】10152 ShellSort (几只乌龟的故事)
  2. CHM综述-建立因果关系,合成菌群在植物菌群研究中的机会
  3. 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)--转
  4. 程序员面试系列——有符号数的溢出
  5. 学习三分 (概念 + 模板 + 例题:曲线)
  6. Java 线程同步总结
  7. 50个最有价值的数据可视化图表
  8. [翻译]PHP中define()和const定义常量的区别
  9. 【等价转换】—— 整数的变换
  10. ACS 4.2安装图解
  11. 虚拟环境mkvirtualenv
  12. 1.Linux性能诊断 --- 入门命令100条
  13. Python爬取虎扑NBA球员信息
  14. 加权评分模型(weighted scoring model)
  15. 暴力电脑锁机生成器(加机械硬盘锁)
  16. [省选前题目整理][清橙A1303]tree(LCT)
  17. 块存储,文件存储,对象存储
  18. oracle连接工具 DBz,[Oracle] - 性能优化工具(3) - ADDM
  19. 一个转来的简单T9输入法
  20. js 数字递增递减_JavaScript如何实现数字递增特效

热门文章

  1. 百万数据php7取出循环_php7关于foreach循环综合问题
  2. Python零基础速成班-第6讲-Python异常处理Exception,tryexcept,raise,assert,输入模块pyinputplus
  3. O2OA(翱途)到底能为我们做什么?
  4. 深信服AC苹果用户上网认证失败,认证mac地址和用户终端mac地址不一致
  5. 【React全家桶】React Hooks
  6. python中文件的存储类型_关于python中数据存储大总结,涵盖文件系统和数据库存储两种方法-文件系统类型...
  7. 数据链路层 要解决的三个问题 封装成帧 透明传输 差错控制
  8. 9种常见的股票投资策略
  9. 后端服务器的压力测试
  10. C语言:数组中找最小数及其坐标