Rust 力扣 - 59. 螺旋矩阵 II

文章目录

  • 题目描述
  • 题解思路
  • 题解代码
  • 题目链接

题目描述

在这里插入图片描述

题解思路

使用一个全局变量current记录当前遍历到的元素的值

我们只需要一圈一圈的从外向内遍历矩阵,每一圈遍历顺序为上边、右边、下边、左边,每遍历完一个元素后current++

我们需要注意的是如果上边与下边重合或者是右边与左边重合,我们只需要遍历上边、右边即可

题解代码

impl Solution {pub fn generate_matrix(n: i32) -> Vec<Vec<i32>> {let mut ans = vec![vec![0; n as usize]; n as usize];let (mut t, mut b, mut l, mut r) = (0usize, n as usize - 1, 0usize, n as usize - 1);let mut current = 1;// 从外圈向内圈遍历while l <= r && t <= b {// 上边 从左到右for i in l..=r {ans[t][i] = current;current += 1;}// 右边 从上到下for i in (t + 1)..=b {ans[i][r] = current;current += 1;}if l < r && t < b {// 下边 从右到左for i in ((l + 1)..r).rev() {ans[b][i] = current;current += 1;}// 左边 从下到上for i in ((t + 1)..=b).rev() {ans[i][l] = current;current += 1;}}l += 1;if r != 0 {r -= 1;}t += 1;if b != 0 {b -= 1;}}ans}
}

题目链接

https://leetcode.cn/problems/spiral-matrix-ii/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/58821.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AppInventor2能否用网络摄像头画面作为屏幕的背景?

// 视频是否可以作为背景&#xff1f; // 有会员提问&#xff1a;能否用网络摄像头的实时画面作为屏幕的背景&#xff1f;就跟这个一样背景全覆盖&#xff1a; 摄像头画面是一个在线的网站链接视频流。 // 原先思路 // 1、目前原生组件无法直接实现这个功能&#xff0c;屏幕…

国产操作系统卖疯了!最营收7.84亿,最低1.5亿

最近看各种报道&#xff0c;似乎国产化有提速的绩效&#xff0c;那么既然如此&#xff0c;各个国产操作系统厂商是不是都起飞了呢&#xff1f; 周末闲暇之余&#xff0c;我们来看看各家的营收表现。 银河麒麟2024年1-9月一共卖了多少钱&#xff1f; 前几天中国软件发布了202…

CDN加速实战:使用七牛云CDN加速阿里云OSS资源访问

今天是双11搞活动,在阿里云1元注册了个域名,想着在学CDN,想使用CDN做个加速项目,但是阿里的要收费,上网查了下七牛云的不收费,想着将七牛云的CDN结合阿里的DNS做个访问加速,刚好看到了阿里的一个文章,照着改了改,实践成功了。 阿里文章:使用CDN加速OSS资源访问_对象…

嵌入式学习——IIC协议

IIC&#xff08;Inter-Integrated Circuit&#xff09;是一种串行通信协议&#xff0c;由飞利浦公司于1980年代提出。它允许多个从设备通过两条线&#xff08;SDA和SCL&#xff09;与一个或多个主设备进行通信。IIC协议是多主、多从的&#xff0c;适合在短距离内的设备间通信。…

qt QStatusBar详解

1、概述 QStatusBar是Qt框架提供的一个小部件&#xff0c;用于在应用程序窗口底部显示状态信息。它可以显示一些固定的文本和图标&#xff0c;并且可以通过API动态更新显示内容。QStatusBar通常是一个水平的窗口部件&#xff0c;能够显示多行文本内容&#xff0c;非常适合用于…

大型语言模型的运行成本分析

大型语言模型 (LLM) 一直处于生成式 AI 革命的前沿&#xff0c;尤其是自 ChatGPT 出现以来。然而&#xff0c;它们的全部潜力尚未得到释放&#xff0c;而一个重大障碍是成本。将 LLM 纳入应用程序的费用范围从按需用例的几美分到在云环境中托管单个 LLM 实例的每月 20,000 美元…

Matlab高光谱遥感

原文链接&#xff1a;Matlab高光谱遥感https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247623643&idx5&sne4557ed43728f851140b100f42286988&chksmfa8da23ccdfa2b2a4d795bf4087f672faaa7082d1f52e046616ab7bf196a6eef89ea553d06b1&token1392391660&…

OPENAI官方prompt文档解析

官方文档地址:https://platform.openai.com/docs/guides/gpt-best-practices 文档中文版来源:OpenAI 官方提示工程指南 [译] | 宝玉的分享 (baoyu.io) 1.写清楚说明 如果prompt给的范围十分模糊或是过于宽泛,那么GPT就会开始猜测您想要的内容,从而导致生成的结果偏离预期. …

共模噪声和差模噪声

电源芯片加上负载和不加负载输出的纹波不一样&#xff0c;不加负载的情况下纹波比较小。 可以测量出DCDC电源的输出电压纹波为100Khz&#xff0c;刚好对应电源芯片的开关频率。可以看到纹波上面有一部分的小噪声&#xff0c;放大后用示波器观察频率为几Mhz。 对付上面的频率比…

DevOps赋能:优化业务价值流的实战策略与路径(上)

上篇&#xff1a;价值流引领与可视化体系构建 一、前言 在快速迭代的软件项目和产品开发生态中&#xff0c;我们始终围绕两个核心目标&#xff1a;一是确保每一项工作都能为客户创造实际价值&#xff0c;这是产品团队的核心使命&#xff1b;二是确保这些有价值的工作能够高效…

机器学习之fetch_olivetti_faces人脸识别--基于Python实现

fetch_olivetti_faces 数据集下载 fetch_olivetti_faceshttps://github.com/jikechao/olivettifaces sklearn.datasets.fetch_olivetti_faces(*, data_homeNone, shuffleFalse, random_state0, download_if_missingTrue, return_X_yFalse, n_retries3, delay1.0)[source] L…

HTML 语法规范——代码注释、缩进与格式、标签与属性、字符编码等

文章目录 一、代码注释1.1 使用注释的主要目的1.2 使用建议二、标签的使用2.1 开始标签和结束标签2.2 自闭合标签2.3 标签的嵌套2.4 标签的有效性三、属性四、缩进与格式4.1 一致的缩进4.2 元素单独占用一行4.3 嵌套元素的缩进4.4 避免冗长的行五、字符编码六、小结在开发 HTML…

Charles简单压力测试

1.接口请求次数&#xff0c;并发量&#xff0c;请求延迟时间均可配置 1.1选中需要进行测试的接口&#xff0c;鼠标右键选中【repeat advance】 2.设置并发参数 下面的图中&#xff0c;选择了1个接口&#xff0c;每次迭代中1个接口同时请求&#xff0c;迭代1000次&#xff08;…

HrmonyOS 赋能套件介绍

文章为官方教程以及自己的部分理解&#xff0c;用于上下班的查看学习。官方视频教程地址&#xff1a;HarmonyOS应用开发者基础认证-华为开发者学堂 (huawei.com) HarmonOS 赋能套件全景 感知 通过白皮书了解认识 HarmonOS 应用开发的核心理念、关键能力和创新体验 学习与评估…

Windows 下基于 CLion 配置 Linux 项目开发环境

【Windows 下基于 CLion 配置 Linux 项目开发环境 【C/C/Linux】】 https://www.bilibili.com/video/BV1tH4y1U73v/?share_sourcecopy_web&vd_source57dbd16b8c7c2ad258cccce5966c5be8

es拼音分词器(仅供自己参考)

github地址&#xff1a;https://github.com/infinilabs/analysis-pinyin&#xff08;各种版本&#xff0c;对接es版本&#xff09; 拼音分词器存在的问题&#xff1a; 1、是直接将每个字的拼音返回和一段话的拼音首字母返回&#xff0c;不能很好的分词。 2、不会保留中文&am…

机器人技术革新:人工智能的强力驱动

内容概要 在当今世界&#xff0c;机器人技术与人工智能的结合正如星星与大海&#xff0c;彼此辉映。随着科技的不断进步&#xff0c;人工智能不仅仅是为机器人赋予了“聪明的大脑”&#xff0c;更是推动了整个行业的快速发展。回顾机器人技术的发展历程&#xff0c;我们会发现…

Waymo的EMMA给多模态端到端自驾指引了方向

最近Waymo发的论文EMMA端到端确实在自动驾驶届引发了很大的关注&#xff0c;核心的原因是它采用的端到端模型是基于Gemini Nano的语言模型&#xff0c;目前看现在做端到端方案的&#xff0c;就它和特斯拉是语言模型为底座来实现多模态视觉输入的。 EMMA:End-to-End Multimodal…

第二十八篇——向量代数(下):如何通过向量夹角理解不同“维度”?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 一个向量的夹角计算&#xff0c;增加了N个维度&#xff1b;让我的思路一下…

猫头虎分享Python 编码转换库:处理 JSONL 编码格式转换的最佳实践

猫头虎分享Python 编码转换库&#xff1a;处理 JSONL 编码格式转换的最佳实践 在数据处理的过程中&#xff0c;编码转换是一个不可避免的重要环节。特别是当我们面对来自不同来源的数据时&#xff0c;确保数据的编码一致性对于数据的正确解析和处理至关重要。本文将介绍 Pytho…