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

leetcode日记(47)螺旋矩阵Ⅱ

这题思路不难,就是找规律太难了。

我首先的思路是一行一行来,根据规律填入下一行的数组,第i行是由前i个数字+(n-2*i)个增序数列+后i个数字组成,后来觉得太难找规律了就换了一种思路。

思路大致是先计算出需要循环的次数((n-1)/2),通过一个循环由外到里依次填入数字,每次填入都要调用四个独立循环,→↓←↑这样填入:

class Solution {
public:vector<vector<int>> generateMatrix(int n) {vector<int> v(n,n*n);vector<vector<int>> result(n,v);int m=(n+1)/2;int j=0;int t=0;n--;while(m>0){int i=0;for(i;i<n;i++) result[t][t+i]=i+j+1;for(i;i<n*2;i++) result[i-n+t][n+t]=i+j+1;for(i;i<n*3;i++) result[n+t][3*n-i+t]=i+j+1;for(i;i<n*4;i++) result[4*n-i+t][t]=i+j+1;t++;n-=2;j+=i;m--;}return result;}
};

这里以为太绕了所以定义了很多数字,m代表还需要循环嵌套m次,t代表当前在嵌套第t次,j代表新的循环从j开始计数,n代表每次循环正方形的边长-1,其实有些好像可以不要的。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 谷粒商城实战笔记-44-前端基础-Vue-整合ElementUI快速开发/设置模板代码
  • html+css 动态效果
  • pdf自动生成书签
  • 单元测试的最佳实践
  • UDP/TCP协议解析
  • Windows 下的sqlserver数据拷贝到linux
  • Cadence23学习笔记(十四)
  • 深入浅出C语言指针(进阶篇)
  • 自动化测试--WebDriver API
  • element表单disabled功能失效问题
  • eqmx上读取数据处理以后添加到数据库中
  • 华为Ascend C算子开发(中级)考试
  • web网站组成
  • 《华为数据之道》读书笔记六---面向自助消费的数据服务建设
  • powershell自定义命令别名
  • [LeetCode] Wiggle Sort
  • 【347天】每日项目总结系列085(2018.01.18)
  • 【面试系列】之二:关于js原型
  • ES6简单总结(搭配简单的讲解和小案例)
  • isset在php5.6-和php7.0+的一些差异
  • Java深入 - 深入理解Java集合
  • js对象的深浅拷贝
  • MD5加密原理解析及OC版原理实现
  • Vue.js-Day01
  • WebSocket使用
  • XForms - 更强大的Form
  • 多线程 start 和 run 方法到底有什么区别?
  • 因为阿里,他们成了“杭漂”
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 智能合约开发环境搭建及Hello World合约
  • 2017年360最后一道编程题
  • raise 与 raise ... from 的区别
  • 阿里云重庆大学大数据训练营落地分享
  • #大学#套接字
  • (1)(1.9) MSP (version 4.2)
  • (1)Nginx简介和安装教程
  • (2)Java 简介
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (独孤九剑)--文件系统
  • (二刷)代码随想录第16天|104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (转)ORM
  • (转)可以带来幸福的一本书
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .Net 高效开发之不可错过的实用工具
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • @Autowired 和 @Resource 区别的补充说明与示例