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

数组——螺旋矩阵II

文章目录

    • 一、题目
    • 二、题解

题目顺序:代码随想录算法公开课,b站上有相应视频讲解

一、题目

59. Spiral Matrix II

Given a positive integer n, generate an n x n matrix filled with elements from 1 to n2 in spiral order.

Example 1:

Input: n = 3
Output: [[1,2,3],[8,9,4],[7,6,5]]
Example 2:

Input: n = 1
Output: [[1]]

Constraints:

1 <= n <= 20

二、题解

循环不变量

class Solution {
public:vector<vector<int>> generateMatrix(int n) {vector<vector<int>> res(n,vector<int>(n,0));int startX = 0,startY = 0,offset = 1,count = 1;int i,j;int loops = n / 2;while(loops--){i = startX,j = startY;for(j = startY;j < n - offset;j++) res[i][j] = count++;for(i = startX;i < n - offset;i++) res[i][j] = count++;for(;j > startY;j--) res[i][j] = count++;for(;i > startX;i--) res[i][j] = count++;startX++;startY++;offset++;}if(n % 2 == 1) res[n/2][n/2] = count;return res;}
};
http://www.lryc.cn/news/192918.html

相关文章:

  • 反范式化设计
  • CCF CSP认证 历年题目自练Day31
  • PCL点云处理之从两片点云中获取具有匹配关系的同名点对 (二百一十八)
  • MySQL Row size too large (> 8126)
  • HUAWEI(26)——防火墙双机热备
  • 【ArcGIS】NDVI估算植被覆盖度FVC
  • vscode用密钥文件连接ssh:如果一直要输密码怎么办
  • 【AI视野·今日Robot 机器人论文速览 第五十三期】Thu, 12 Oct 2023
  • 【LeetCode第115场双周赛】100029. 和带限制的子多重集合的数目 | 前缀和背包 | 中等
  • ArcGIS笔记5_生成栅格文件时保存报错怎么办
  • YOLO目标检测——跌倒摔倒数据集【含对应voc、coco和yolo三种格式标签】
  • uniapp小程序实现绘制内容,生成海报并保存截图(Painter和Canvas两种方式举例)
  • HTTPS双向认证及密钥总结
  • Mybatis用Byte[]存图片,前端显示图片
  • MacBook/MacOS如何更新到指定的版本
  • 使用VScode进行C++开发
  • Android Studio的笔记--HttpsURLConnection使用POST请求
  • win redis 配置自启动服务
  • 走进Spark
  • “小程序:改变电商行业的新趋势“
  • Python与CAD系列基础篇(五)创建图案填充
  • 终端仿真软件连接交换机调试步骤
  • redis基本数据类型
  • C++笔记之std::async的用法
  • OpenCV4(C++)—— 图像连通域的详细分析
  • Rule-Engine-Starter V1.0.0
  • 绘制X-Bar-S和X-Bar-R图,监测过程,计算CPK过程能力指数
  • 【每日一句】只出现一次的数
  • GDB调试程序常用命令
  • C语言,求两个数的二进制表达中,有多少个位数不同