Javascript每天一道算法题(十八)——矩阵置零-中等
文章目录
- 1、问题
- 2、示例
- 3、解决方法
- (1)方法1——标记数组
1、问题
给定一个 y x x 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。
2、示例
示例 1:
输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]
111 101
101 => 000
111 101
示例 2:
输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]
0120 0000
3452 => 0450
1215 0310
3、解决方法
(1)方法1——标记数组
思路:
1:用两个标记数组分别记录每一行和每一列是否有零出现。
2:遍历该数组一次,如果某个元素为 0,那么就将该元素所在的行和列所对应标记数组的位置置为 true
3:最后我们再次遍历该数组,用标记数组更新原数组即可。
let matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
var setZeroes = function(matrix) {// 1:获取x,y轴的长度let y = matrix.length; // 1-1:二维数组的长度(矩阵y轴的长度)let x = matrix[0].length; // 1-2:一维数组的长度(矩阵x轴的长度)// 2:获取行和列的长度(注意:行的长度由列决定)let row = new Array(y).fill(false); // 2-1: 行(行的长度是列的多少决定的,如示例二有四列,行为4)let col = new Array(x).fill(false); // 2-2: 列(列的长度是行的多少决定的,如示例二有三行,列为3)// 3:双层遍历该数组,如果其中有一个元素为0,将当前的行和列改为truefor(let i =0;i<y;i++){for(let j =0;j<x;j++){if(matrix[i][j] == 0){row[i] = col[j] = true}}}// 4:再次双层循环该数组,将之前标记为true的数据设置为0for(let i =0;i<y;i++){for(let j =0;j<x;j++){if(row[i] || col[j]){matrix[i][j] = 0}}}// 5:输出结果console.log('zz', matrix);
};
相关文章:
Javascript每天一道算法题(十八)——矩阵置零-中等
文章目录 1、问题2、示例3、解决方法(1)方法1——标记数组 1、问题 给定一个 y x x 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 2、示例 示例 1: 输入:matrix [[…...
基于ROS开发的开源项目
基于ROS (Robot Operating System) 开发的开源项目很多,其中一些已经在机器人领域内非常知名。以下是一些比较著名的例子: Autoware: Autoware 是一个开源的自动驾驶车辆的软件栈,提供了从3D地图表示、环境感知(如障碍物、行人检测…...
kafka精准一次、事务、幂等性
Kafka事务 消息中间件的消息保障的3个级别 At most once 至多一次。数据丢失。At last once 至少一次。数据冗余Exactly one 精准一次。好!!! 如何区分只要盯准提交位移、消费消息这两个动作的时机就可以了。 当:先消费消息、…...
centos 7.9 下利用miniconda里的pyinstaller打包python程序为二进制文件操作方法
centos 7.9 下利用miniconda里的pyinstaller打包python程序为二进制文件操作方法 一.centos 7.9 操作系统安装 参考:https://blog.csdn.net/qq_46015509/article/details/134572030?utm_sourceminiapp_weixin 安装完成后用后台连接工具连上虚拟机 二.安装python3 …...
Motion Plan之基于采样的路径规划算法笔记
Motion Plan之搜索算法笔记 背景: 基于采样算法是一种在路径规划中广泛应用的有效方法。它通过在图中随机选择点来生成一个简化的搜索图,从而加速搜索过程。这种方法的主要优点包括减少内存使用,避免计算错误,具有动态障碍物对抗…...
idea里面常用插件
这里列出了一系列常用的 IntelliJ IDEA 插件,它们可以提高开发效率、简化操作,以及帮助进行代码分析和优化。以下是每个插件的简要介绍: GenerateAllSetter:生成对象的所有 set 方法和 get 方法,方便对象之间的转换。该…...
回归算法优化过程推导
假设存在一个数据集,包含工资、年龄及贷款额度三个维度的数据。我们需要根据这个数据集进行建模,从而在给定工资和年龄的情况下,实现对贷款额度的预测。其中,工资和年龄是模型构建时的两个特征,额度是模型输出的目标值…...
某高品质房产企业:借助NineData平台,统一数据库访问权限,保障业务安全
该企业是中国领先的优质房产品开发及生活综合服务供应商。在 2022 年取得了亮眼的业绩表现,销售额市场占有率跻身全国前五。业务涵盖房产开发、房产代建、城市更新、科技装修等多个领域。 2023 年,该企业和玖章算术(浙江)科技有限…...
Arduio开发STM32所面临的风险
据说micro_ros用到了arduino,然后用arduino搞stm32需要用到这个Arduino STM32的东西,然后这里申明了:这些代码没有经过严格测试,如果是向心脏起搏器,自动驾驶这样要求严格的的情况下,这个东西不能保证100%不发生问题&a…...
精准人脉引流软件的开发流程与涉及到的技术
一、精准人脉引流软件的开发流程 1. 确定需求:首先,我们需要明确软件的需求,包括目标用户、功能需求、性能需求等。这些需求将直接影响到软件的开发方向和最终效果。 2. 系统设计:根据需求,进行系统设计,…...
Mysql数据库 20.DCL数据控制语言
因这类SQL语言开发人员操作较少,主要是数据库管理员(DBA)使用,所以前文没有提及,这篇文章进行补充说明 DCL数据控制语言 用来管理数据库用户,控制数据库的访问权限 1.管理用户 1.1 查询用户 select * f…...
使用CMake交叉编译Arm Linux程序
下载安装aarch64-linux-gnu-gcc arm交叉编译工具链 apt-get install aarch64-linux-gnu-gccapt-get install aarch64-linux-gnu-gcc创建编译目录构建makefle 注意,工具链文件的指定一定要紧跟cmake命令之后,不能放到 … 后面构建arm架构cmake mkdir arm…...
训练日志——logging
目录 基础使用日志的6个级别打印日志修改打印级别 高级应用logging的组成记录器Loggers处理器Handlers过滤器Filterformatter格式创建关联打印日志 配置文件参考 基础使用 日志的6个级别 打印日志 import logginglogging.debug(调试日志) logging.info(消息日志) logging.war…...
尺度为什么是sigma?
我们先看中值滤波和均值滤波。 以前,我认为是一样的,没有区分过。 他们说,均值滤波有使图像模糊的效果。 中值滤波有使图像去椒盐的效果。为什么不同呢?试了一下,果然不同,然后追踪了一下定义。 12345&…...
迭代器模式
自定义 Counter 结构体类型,并实现迭代器。其他语言的场景,读取数据库行数据时,使用的就是迭代器。我们使用for语言遍历数组,也是一种迭代。 结构体对象实现 Iterator trait,创建自定义的迭代器,只需要实现…...
C++ 修饰符、存储类、运算符、循环、判断
一、C修饰符类型: C允许在char、int、double数据类型前放置修饰符。 数据类型修饰符: ◆ signed:表示变量可以存储负数。对于整型变量来说,signed 可以省略,因为整型变量默认为有符号类型。 ◆ unsigned࿱…...
2023 hnust 湖南科技大学 信息安全管理课程 期中考试 复习资料
前言 ※老师没画重点的补充内容★往年试卷中多次出现或老师提过的,很可能考该笔记是奔着及格线去的,不是奔着90由于没有听过课,部分知识点不一定全,答案不一定完全正确 题型 试卷有很多题是原题 判断题(PPTÿ…...
N皇后问题解的个数
暴力递归 #include <stdio.h>int count0,a[15],flag; void queen(int,int); int main(){int n;scanf("%d",&n);queen(n,n);printf("%d",count); } void queen(int n,int n0){if(n<1){flag1;for(int i1;i<n0;i){for(int j1;j<n0;j){if(…...
php订单发起退款(余额和微信支付)
index.html <a class="btn btn-danger btn-change btn-tuikuan btn-disabled" href="javascript:;"><i class="fa fa-tuikuan"></i> 订单退款</a>-->order.js // 为表格绑定事件Table.api.bindevent(table);//退款…...
【SpringCloud】认识微服务、服务拆分以及远程调用
SpringCloud 1.认识微服务 1.1单体架构 单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署 单体架构的优缺点: 优点: 架构简单,部署成本低 缺点: 耦合度高(维护困难&#x…...
从零理解软件无线电:用GNU Radio仿真带你搞懂AM调制与解调全过程
从零理解软件无线电:用GNU Radio仿真带你搞懂AM调制与解调全过程 在通信工程领域,软件无线电(SDR)技术正以前所未有的方式重塑着信号处理的边界。不同于传统硬件无线电设备需要专用电路实现每个功能模块,SDR将大部分处…...
告别搜狗输入法后,如何在Ubuntu 16.04上快速配置ibus-pinyin或fcitx-sunpinyin
Ubuntu 16.04中文输入法深度配置指南:从框架选择到效率优化 在Linux桌面环境中,中文输入体验一直是用户关注的焦点。当Ubuntu 16.04用户告别第三方输入法后,系统自带的输入法框架往往能提供更稳定、更轻量的解决方案。本文将深入探讨如何在Ub…...
从模型部署反推:为什么你的GPU显存总是不够用?聊聊Params、FLOPs与显存占用的真实关系
从模型部署反推:为什么你的GPU显存总是不够用?聊聊Params、FLOPs与显存占用的真实关系 当你兴冲冲地将训练好的模型部署到生产环境时,是否经常遇到这样的场景:明明参数量(Params)看起来不大,但G…...
收藏!小白程序员轻松上手AI Agent,一周搞定3个业务系统,效率飙升!
本文分享了作者利用6个开源AI Agent项目(Auto-GPT、GPT Engineer、Voyager、Open Interpreter、TaskWeaver、LangChain)在一周内完成3个业务系统开发的经验。作者详细介绍了使用这些工具的过程、遇到的挑战以及如何克服它们,并总结了AI Agent…...
如何3步彻底清理Windows右键菜单:ContextMenuManager终极优化指南
如何3步彻底清理Windows右键菜单:ContextMenuManager终极优化指南 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否也曾为Windows右键菜单的混乱…...
s2-pro语音合成多语言支持:中英日韩混合文本语音生成实测教程
s2-pro语音合成多语言支持:中英日韩混合文本语音生成实测教程 1. 前言:为什么选择s2-pro 如果你正在寻找一款专业级的语音合成工具,s2-pro绝对值得你关注。作为Fish Audio开源的专业级语音合成模型镜像,它不仅支持常规的文本转语…...
Sentaurus仿真效率翻倍:详解Physics和Math模块里那些被你忽略的参数(以NPN仿真为例)
Sentaurus仿真效率翻倍:详解Physics和Math模块里那些被你忽略的参数(以NPN仿真为例) 在半导体器件仿真领域,Sentaurus作为行业标杆工具,其强大的功能背后往往隐藏着许多未被充分利用的性能优化参数。许多工程师在完成基…...
思源宋体:7款完全免费中文字体,开启你的专业设计之旅 [特殊字符]
思源宋体:7款完全免费中文字体,开启你的专业设计之旅 🎨 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 还在为寻找高质量的中文字体而烦恼吗&#…...
告别手动转换!用Python+Mikeio一键将ERA5风场数据喂给MIKE模型(附完整代码)
从ERA5到MIKE模型:Python自动化风场数据处理实战指南 每次手动转换气象数据格式时,那些重复的点击操作和容易出错的坐标调整是否让你感到疲惫?当项目周期紧张而数据处理却占据大半时间,工程师们真正需要的是像流水线一样可靠的数据…...
Degrees of Lewdity汉化版终极教程:3步解决中文配置难题
Degrees of Lewdity汉化版终极教程:3步解决中文配置难题 【免费下载链接】Degrees-of-Lewdity-Chinese-Localization Degrees of Lewdity 游戏的授权中文社区本地化版本 项目地址: https://gitcode.com/gh_mirrors/de/Degrees-of-Lewdity-Chinese-Localization …...

