leetcode 59.螺旋矩阵

news2024/10/5 2:36:38

在这里插入图片描述

记录一下,觉得倒水思想来做 总体看起来还是比较清晰的。

class Solution {
public:
    vector<vector<int>> generateMatrix(int n) {
        int a[4][2] = {{0,1}, {1,0}, {0,-1},{-1,0}};

        int direction=0;  //方向
        int num=0;

        int S =n*n;
        int x = 0;
        int y = 0;
        
        vector<vector<int>> Matrix(n, vector<int>(n, 0));

        while(num!=S){
            num++;
            Matrix[x][y]=num;

            x+=a[direction][0];
            y+=a[direction][1];
            if(x>=n || y>=n || x<0 || y<0 || Matrix[x][y]!=0){
                x-=a[direction][0];
                y-=a[direction][1];
                direction = (direction+1)%4;
                x+=a[direction][0];
                y+=a[direction][1];
            } 
        }  
        return  Matrix;

    }
};

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

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

相关文章

解析基因影响:孟德尔随机化的创新思维

一、引言 在当今的遗传学和生物学研究中&#xff0c;我们对基因对个体特征和性状的影响的理解变得更加深入。然而&#xff0c;基因影响的复杂性和多样性给我们带来了巨大的挑战。为了更好地揭示基因影响的本质和机制&#xff0c;我们需要采用创新的研究思维和方法。 本文的目的…

听GPT 讲K8s源代码--pkg(四)

/pkg/controlplane、/pkg/credentialprovider、/pkg/kubeapiserver是Kubernetes中的三个核心包&#xff0c;它们分别实现了不同的功能。 /pkg/controlplane包 /pkg/controlplane是Kubernetes的一个包&#xff0c;它包含了控制平面组件的实现&#xff0c;例如API Server、Contro…

妙记多 Mojidoc 模版投稿活动招募

妙记多 Mojidoc 开始征集模板啦! 快来投稿吧&#xff01;&#x1f389;&#x1f389;&#x1f389; 优秀模板将被选录进官方模板中心&#xff0c;让你的灵感和创意被更多人看见&#xff01;选录后&#xff0c;你可直接解锁「高级体验官」称号&#xff0c;并有机会获得妙记多 M…

IDELAYG/ODELAY/IDELAYCTRL

如下是7系列FPGA HP Bank I/O 资源&#xff1a; 其中ILOGIC是由许多的数据选择器和一个IDDR触发器构成。 在HP BANK中&#xff0c;ILOGIC被称为ILOGICE2&#xff0c;在HR BANK中&#xff0c;ILOGIC被称为ILOGICE3 IDELAY 简单介绍 输入信号延迟模块。每个I/O模块都包含了一…

内存分区,编译链接,ARCMRC,消息传递消息转发,对象的底层

文章目录 前言内存分区栈区堆区全局区文字常量区程序代码区运行之前运行之后 编译&#xff0c;链接编译的过程链接 ARC&#xff0c;MRC在编译期干了什么 对象的底层消息传递&#xff0c;消息转发消息转发消息传递IMP指针IMP与SEL的区别与联系 前言 对第一周学习内容做个概括 提…

no module named paddle pip install paddlepaddle报错

!python -m pip install paddlepaddle2.4.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

Python实战项目——餐厅订单数据分析(一)

项目背景 餐厅经营的好坏需要用数据来说明&#xff0c;如果一个餐厅生意惨淡&#xff0c;那么应该先收集最近的数据&#xff0c;然后进行数据分析&#xff0c;再对应相应出现的问题进行解决和做出对应的商业调整。今天开始我们分析一来家餐厅的数据。 认识数据并预处理 拿到…

GUI-Menu菜单实例

运行代码&#xff1a; //GUI-Menu菜单实例 #include"std_lib_facilities.h" #include"GUI/Simple_window.h" #include"GUI/GUI.h" #include"GUI/Graph.h" #include"GUI/Point.h"struct Lines_window :Window {Lines_window…

Appium+python自动化(十二)- Android UIAutomator终极定位凶器(超详解)

简介 乍眼一看&#xff0c;小伙伴们觉得这部分其实在异性兄弟那里就做过介绍和分享了&#xff0c;其实不然&#xff0c;上次介绍和分享的大哥是uiautomatorviewer&#xff0c;是一款定位工具。今天介绍的是一个java库&#xff0c;提供执行自动化测试的各种API。 Android团队在4…

小程序控制台警告:DevTools failed to load SourceMap(控制台报错DevTools 无法加载来源映射)

在调试项目的时候&#xff0c;控制台报错:**DevTools failed to load SourceMap: Could not load content for http://xxx.js. 这段报错的意思是dev工具未能成功加载source map&#xff08;文件映射&#xff09;。这里的报错实际上和项目本身的代码没有任何关系&#xff0c;而是…

基于 Fedora 38 的预期版本 Nobara 38 发布

导读基于 Fedora 38 的预期版本 Nobara 38 终于发布了&#xff0c;它带来了一系列用户友好的修复和功能增强。Nobara 是 Fedora Linux 的修改版本&#xff0c;旨在解决用户面临的常见问题&#xff0c;并提供开箱即用的顺滑的游戏、流媒体和内容创建体验。凭借一系列附加软件包和…

HTTP 缓存机制 强制缓存/协商缓存

Web 缓存大致可以分为&#xff1a;数据库缓存、服务器端缓存&#xff08;代理服务器缓存、CDN 缓存&#xff09;、浏览器缓存。 浏览器缓存也包含很多内容&#xff1a; HTTP 缓存、indexDB、cookie、localstorage 等等。这里我们只讨论 HTTP 缓存相关内容。 在具体了解 HTTP …

美国电动汽车公司Lucid在中国市场的投资机会

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 总结&#xff1a; &#xff08;1&#xff09;Lucid计划进入快速增长的中国电动汽车市场&#xff0c;未来可能会加速交付和收入增长。 &#xff08;2&#xff09;中国人口众多&#xff0c;电动汽车采用率高&#xff0c;政府…

深度学习开发环境

Ubuntu搭建深度学习开发环境(Pytorch Tensorflow GPU版本) 显卡驱动系列 深度学习主要涉及到显卡的使用(如开发时使用GPU版本库&#xff0c;就需要提前安装好显卡驱动方可使用)&#xff0c;所以这里主要说明显卡驱动的安装。 显卡驱动(Driver) | 官网:显卡驱动下载CUDA(NVID…

汤姆猫+AI求IP“翻红”?股东年内忙减持

作为初代手机宠物陪伴游戏&#xff0c;“会说话的汤姆猫”曾在全球积累了大量粉丝&#xff0c;汤姆猫IP也成为一代经典。2017年&#xff0c;A股上市公司金科文化将诞生自海外“汤姆猫”收入麾下。你或许不知道&#xff0c;汤姆猫已成为中国A股市场的一只股票代码。 在金科文化…

曲师大2023大一新生排位赛-B.Sort题解

题目描述 插入排序是一种非常常见且简单的排序算法。王同学是一名大一的新生&#xff0c;今天许师哥刚刚在上课的时候讲了插入排序算法。 假设比较两个元素的时间为 &#xff0c;则插入排序可以以 的时间复杂度完成长度为 n&#xfffd; 的数组的排序。不妨假设这 n 个数字分…

如何将大批量将行驶证合并转为excel?

我们知道&#xff0c;金鸣识别小程序和网页在线版都支持将行驶证转为excel&#xff0c;但这二种方案只适合小量、零星的转换&#xff08;小程序只能一次提交4张图片&#xff0c;网页在线版只能一次提交5张&#xff09;&#xff0c;要想大批量识别&#xff0c;就要下载安装金鸣识…

栈与队列 理论基础

我们都知道栈和队列是STL&#xff08;C标准库&#xff09;里面的两个数据结构。 栈是前进后出&#xff0c;队列是先进先出 C标准库是有多个版本的&#xff0c;要知道我们使用的STL是哪个版本&#xff0c;才能知道对应的栈和队列的实现原理。 那么来介绍一下&#xff0c;三个最…

springboot项目自定义注解+Aop实现收集日志

一 工程结构 二 配置 2.1 配置pom <!--spring boot的启动类 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.…

Sentinel的线程隔离和熔断降级

上一节整理了Sentinel的限流&#xff0c;限流可以降低微服务的负载&#xff0c;避免因为高并发而故障&#xff0c;进而传递给其他相关服务而引发服务雪崩。以上仅为避免服务故障&#xff0c;而当某个服务真正故障时&#xff0c;如何处理才能防止服务雪崩&#xff1f; ⇒ Sentin…