leetcode(js)-每日一练之 矩阵置零 题库编号 73
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相关推荐
- LeetCode 73矩阵置零74搜素二维矩阵75颜色分类
新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...
- Leetcode算法Java全解答--73. 矩阵置零
Leetcode算法Java全解答–73. 矩阵置零 文章目录 Leetcode算法Java全解答--73. 矩阵置零 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 其他 题目 给定 ...
- Java实现 LeetCode 73 矩阵置零
73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ...
- leetcode 73 矩阵置零 Python
矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [[1,1,1],[1,0,1],[1,1,1] ] 输出: [ ...
- LeetCode 73. 矩阵置零(两个标记变量)
73. 矩阵置零 我们可以用矩阵的第一行和第一列作为两个标记数组,以达到 O(1)O(1) 的额外空间. 但这样会导致原数组的第一行和第一列被修改,无法记录它们是否原本包含 0.因此我们需要额外使用两 ...
- C++矩阵置零---原地算法(附三种解法)
如题只要发现一个元素为0,那么它所在的行和列都要置零. 方法一:使用两个数组只要发现某个元素为0,就将这一行或这一列的头元素置true,然后再遍历矩阵,只要某个元素对应的行或列头元素为true,那么对 ...
- leetcode 73. 矩阵置零
给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 .请使用 原地 算法. 进阶: 一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案. ...
- leetcode 73 矩阵置零 C++ 两种解法
leetcode 73 两种解法~~,没有一个是我想出来的,哈哈~~ one class Solution {public:void setZeroes(vector<vector<int ...
- 每日一练-10-求矩阵主对角线及副对角线元素的和
题目描述 求一个n*n的矩阵主对角线及副对角线元素的和! 分析 首先要明确什么为矩阵 由此可见,矩阵对应的为二位数组定义为a[n][n]: 什么为主对角线?主对角线就是矩阵的左上角到右下角的对角线. ...
最新文章
- 【UVA】10152 ShellSort (几只乌龟的故事)
- CHM综述-建立因果关系,合成菌群在植物菌群研究中的机会
- 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)--转
- 程序员面试系列——有符号数的溢出
- 学习三分 (概念 + 模板 + 例题:曲线)
- Java 线程同步总结
- 50个最有价值的数据可视化图表
- [翻译]PHP中define()和const定义常量的区别
- 【等价转换】—— 整数的变换
- ACS 4.2安装图解
- 虚拟环境mkvirtualenv
- 1.Linux性能诊断 --- 入门命令100条
- Python爬取虎扑NBA球员信息
- 加权评分模型(weighted scoring model)
- 暴力电脑锁机生成器(加机械硬盘锁)
- [省选前题目整理][清橙A1303]tree(LCT)
- 块存储,文件存储,对象存储
- oracle连接工具 DBz,[Oracle] - 性能优化工具(3) - ADDM
- 一个转来的简单T9输入法
- js 数字递增递减_JavaScript如何实现数字递增特效
热门文章
- 百万数据php7取出循环_php7关于foreach循环综合问题
- Python零基础速成班-第6讲-Python异常处理Exception,tryexcept,raise,assert,输入模块pyinputplus
- O2OA(翱途)到底能为我们做什么?
- 深信服AC苹果用户上网认证失败,认证mac地址和用户终端mac地址不一致
- 【React全家桶】React Hooks
- python中文件的存储类型_关于python中数据存储大总结,涵盖文件系统和数据库存储两种方法-文件系统类型...
- 数据链路层 要解决的三个问题 封装成帧 透明传输 差错控制
- 9种常见的股票投资策略
- 后端服务器的压力测试
- C语言:数组中找最小数及其坐标