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

leetcode73 矩阵置零

题目

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。

示例

输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]
在这里插入图片描述

解析

这道题题目上要求用原地算法,先说开辟额外辅助空间的方法吧,原理上就是对于行和列开辟两个布尔型数组,先遍历一遍矩阵,将为0的位置(行和列的下标)置为0,完事后再遍历一遍矩阵,把对应位置的值置为0即可。

func setZeroes(matrix [][]int) {row := make([]bool, len(matrix))col := make([]bool, len(matrix[0]))for i, r := range matrix {for j, v := range r {if v == 0 {row[i] = truecol[j] = true}}}for i, r := range matrix {for j := range r {if row[i] || col[j] {r[j] = 0}}}
}

另外还有不适用额外空间,只需要定义变量的写法,但感觉有点复杂了,先不写了

相关文章:

leetcode73 矩阵置零

题目 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]] 解析 这道题题目上要求用原地算法…...

了解 XML HttpRequest 及其在 Web 开发中的应用

XML HttpRequest(XHR) 技术是构建动态、响应式网站的关键。这项技术使得网页能在不重新加载整个页面的情况下与服务器进行数据交互,极大地优化了用户的交互体验。 定义 XML HttpRequest XML HttpRequest 是一种浏览器与服务器进行数据交换的…...

CPU与GPU的原理不同

CPU(中央处理器)和GPU(图形处理器)在设计原理上有很大的不同。CPU是通用的计算核心,擅长处理复杂的控制流和数据结构,而GPU则是为了并行处理大量相似的计算任务而设计的。二者是计算机系统中两种不同类型的…...

嵌入式相关基础

一.常见的芯片类型 1.微控制器(MCU) (1)STM32 主频(MHz)内核Flash(Kbytes)Ram(Kbytes)封装ADC channels DAC channels SPISTM32F407ZG168ARM Cortex-M4f1024192LQFP1442423STM32F407ZE168ARM Cortex-M4f512192LQFP1442423STM32F407VE168ARM Cortex-M4f512192LQFP1001623STM32…...

无线麦克风推荐哪些品牌?一文读懂家用无线麦克风哪个牌子好!

​在这个充满创意与表达的时代,无线领夹麦克风以其独特的魅力,成为了声音创作者们的得力助手。它小巧便携,功能强大,无论是日常拍摄、直播互动还是专业演出,都能轻松应对,让你的声音随时随地清晰传递。那么…...

构建SOA架构时应该注意的问题

1.原有系统架构中的集成需求 面向服务的体系结构本质上来说是一种具有特殊性质的体系结构,它由具有互操作性和位置透明的组件集成构建并互连而成。基于SOA的企业系统架构通常都是在现有系统架构投资的基础上发展起来的,我们并不需要彻底重新开发全部的子…...

动手学深度学习(Pytorch版)代码实践 -深度学习基础-13Kaggle竞赛:2020加州房价预测

13Kaggle竞赛:2020加州房价预测 # 导入所需的库 import numpy as np import pandas as pd import torch import hashlib import os import tarfile import zipfile import requests from torch import nn from d2l import torch as d2l# 读取训练和测试数据 train_…...

编程输出中间变量:深度解析与实战应用

编程输出中间变量:深度解析与实战应用 在编程过程中,中间变量是一个至关重要的概念。它们不仅有助于我们更好地理解和组织代码,还能提高程序的效率和可读性。那么,编程输出中间变量究竟是什么呢?本文将从四个方面、五…...

冒泡排序、选择排序

冒泡排序 按照冒泡排序的思想,我们要把相邻的元素两两比较,当一个元素大于右侧相元素时,交换它们的位置;当一个元素小于或等于右侧相邻元素时,位置不变 大的往右丢(往下沉),小的往…...

嵌入式实训day6

1、 from machine import Pin from neopixel import NeoPixel import timeif __name__"__main__"#创建RBG灯带控制对象,包含5个像素(5个RGB LED)rgb_led NeoPixel(Pin(4,Pin.OUT),5)#定义RGB颜色RED(255,0,0)GREEN(0,2…...

产品经理是青春饭吗?终于有了答案!

不少考生疑惑产品经理是青春饭吗?产品经理能干到多少岁?弄清楚这些问题,我们才会有长久的规划。产品经理是青春饭吗?产品经理能干到多少岁?一起来看看 一、产品经理是青春饭吗? 产品经理是否吃青春饭需要…...

FPGA - 数 - 加减乘除

一,数的表示 首先,将二进制做如下解释: 2的0次方1 2的1次方2 2的2次方4 2的3次方8 ..... 以此类推,那么任何整数,或者说任意一个自然数均可以采用这种方式来表示。 例如,序列10101001,根据上述…...

软件性能测试之负载测试、压力测试详情介绍

负载测试和压力测试是软件性能测试中的两个重要概念,它们在保证软件质量和性能方面起到至关重要的作用,本文将从多个角度详细介绍这两种测试类型。 一、软件负载测试   负载测试是在特定条件下对软件系统进行长时间运行和大数据量处理的测试&#xff…...

科研辅助工具

科研工具收集 1. 如何筛选出最合适的SCI论文投稿杂志:点击直达 2. 分享三种正确查找期刊全称、缩写的网站: 点击直达...

亿达中国武汉园区入选“武汉市科技金融工作站”及“武汉市线下首贷服务站”

近日,武汉市2024科技金融早春行活动在深交所湖北资本市场培育基地举行。会上,第四批武汉市科技金融工作站试点单位名单及第五批武汉地区金融系统线下首贷服务站名单正式公布,武汉软件新城成功入选上述两个名单。 为缓解科技型企业融资难题&a…...

Docker配置阿里云加速器(2续)

默认情况下镜像是从docker hub下载,由于docker hub服务器在国外,由于网络原因镜像下载速度较慢,一般会配置镜像加速进行下载 国内镜像加速器有阿里云、网易云、中科大等,本章配置阿里云镜像加速器,速度较快 镜像加速源 镜像加速器 镜像加速器地址 <...

我用chatgpt写了一款程序

众所周知&#xff0c;Chatgpt能够帮助人们写代码&#xff0c;前几天苏音试着完全用Chatgpt写一款Python程序 有一句话我很赞同&#xff0c;未来能代替人的不是AI&#xff0c;是会使用AI的人。 最终&#xff0c;写下来效果还不错&#xff0c;完全提升了我的办公效率。 开发前…...

Python实现逻辑回归与判别分析--西瓜数据集

数据 数据data内容如下&#xff1a; 读取数据&#xff1a; import numpy as np import pandas as pd data pd.read_excel(D:/files/data.xlsx) 将汉字转化为01变量&#xff1a; label [] for i in data[好瓜]:l np.where(i 是,1,0)label.append(int(l)) data[label] lab…...

课时154:项目发布_手工发布_手工发布

1.2.3 手工发布 学习目标 这一节&#xff0c;我们从 基础知识、简单实践、小结 三个方面来学习 基础知识 简介 为了合理的演示生产环境的项目代码发布&#xff0c;同时又兼顾实际实验环境的资源&#xff0c;我们这里将 B主机和C主机 用一台VM主机来实现&#xff0c;A主机单…...

鸿蒙开发 一 (四)、ArkTS开发 --UI篇

相对布局 RelativeContainer 支持容器内部的子元素设置相对位置关系子元素支持指定兄弟元素作为锚点&#xff0c;也支持指定父容器作为锚点&#xff0c;基于锚点做相对位置布局 //alignRules 写法let AlignRus:Record<string,Record<string,string|VerticalAlign|Horiz…...

电子小白之二极管

很多年前我第一次看到电路图上各种二极管符号时&#xff0c;心里只有一个想法&#xff1a;这玩意儿到底干嘛用的&#xff1f;硬件部门同事告诉我一句话&#xff0c;瞬间就通了&#xff1a; 正向导通&#xff0c;反向截止&#xff1b;整流防反&#xff0c;稳压发光。 今天就用最…...

从‘偏差-方差’到一行代码:用NumPy/PyTorch五步实现GAE,附PPO实战避坑点

从‘偏差-方差’到一行代码&#xff1a;用NumPy/PyTorch五步实现GAE&#xff0c;附PPO实战避坑点 强化学习中的策略优化常常面临一个核心挑战&#xff1a;如何准确评估动作的价值&#xff1f;广义优势估计&#xff08;GAE&#xff09;通过巧妙平衡偏差与方差&#xff0c;成为PP…...

从C语言到裸机运行:i.MX6ULL 的 GPIO 控制与编译链接过程分析

引言在嵌入式系统开发中&#xff0c;从高级语言到硬件控制的完整链路涉及编译、链接、寄存器配置等多个环节。本文基于 i.MX6ULL 平台&#xff0c;以 C 语言实现 LED 与蜂鸣器控制为例&#xff0c;系统分析 ARM 裸机开发中的编译工具链使用、链接脚本的作用&#xff0c;以及 GP…...

从ADC的‘胃口’说起:深入浅出解析电平移位电路中基准源VREF与滤波电容的选型玄学

从ADC的"胃口"说起&#xff1a;深入浅出解析电平移位电路中基准源VREF与滤波电容的选型玄学 在模拟电路设计中&#xff0c;ADC&#xff08;模数转换器&#xff09;就像一位挑剔的美食家&#xff0c;对输入信号的"口味"有着严苛的要求。而电平移位电路则如同…...

ssm+java2026年毕设司库管理系统【源码+论文】

本系统&#xff08;程序源码&#xff09;带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、选题背景关于企业理财与融资管理问题的研究&#xff0c;现有研究主要以大型企业ERP系统或通用财务管理软件为主&#xff0c;专门针对中…...

Unity 工具之(SharpZipLib)跨平台中文Zip压缩与解压实战指南(附多线程优化)

1. 为什么选择SharpZipLib处理Unity中的Zip文件 在Unity项目开发中&#xff0c;资源打包和网络传输经常需要处理压缩文件。SharpZipLib作为.NET平台的老牌压缩库&#xff0c;相比Unity内置的压缩方案有三个不可替代的优势&#xff1a; 首先是对中文路径的完美支持。很多开发者都…...

Undecimus革新性全流程越狱技术指南:从核心价值到实用工具

Undecimus革新性全流程越狱技术指南&#xff1a;从核心价值到实用工具 【免费下载链接】Undecimus unc0ver jailbreak for iOS 11.0 - 12.4 项目地址: https://gitcode.com/gh_mirrors/un/Undecimus 一、核心价值&#xff1a;破解iOS生态三大痛点 Undecimus作为针对iOS…...

PUMA560轨迹规划踩坑记:DH参数选错,你的仿真结果还准吗?

PUMA560轨迹规划实战&#xff1a;从DH参数陷阱到精准运动控制 第一次在MATLAB中看到PUMA560机械臂的末端执行器画出诡异的"8"字轨迹时&#xff0c;我盯着屏幕足足愣了三分钟。按照教科书上的标准DH参数编写的代码&#xff0c;理论上应该生成完美的直线运动&#xff0…...

【Zynq 进阶一】深度解析 PetaLinux 存储布局:NAND Flash 分区与 DDR 内存分配全攻略

【Zynq 进阶】深度解析 PetaLinux 存储布局&#xff1a;NAND Flash 分区与 DDR 内存分配全攻略 文章目录【Zynq 进阶】深度解析 PetaLinux 存储布局&#xff1a;NAND Flash 分区与 DDR 内存分配全攻略&#x1f4dd; 前言&#x1f4e6; 第一部分&#xff1a;大局观——NAND 与 D…...

【仿真】Carla跨平台部署指南:从零到一,附ROS2与Autoware.auto连接实战

1. Carla仿真平台概述 Carla是一款开源的自动驾驶仿真平台&#xff0c;基于虚幻引擎构建&#xff0c;能够提供高度逼真的城市环境和交通场景。我第一次接触Carla是在2018年&#xff0c;当时它还处于早期开发阶段&#xff0c;但已经展现出惊人的潜力。经过多年发展&#xff0c;现…...