Description:

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

Example:

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

Solution:

这道题和那道:LeetCode 54 _ Sprial Matrix 旋转矩阵 是一样的,思路也完全相似,就不赘述了。

有一点相比于LC54中写的可以优化的是,由于这次输入的col和row相同,我们可以直接通过已经输出的字符数直接判断是否输入完成,这样就不用在每回第三、四次转向的时候继续判断是否越界了。

Code:

public int[][] generateMatrix(int n) {int[][] res = new int[n][n];if (n == 0) {return res;}int count = 1;int rowS = 0, rowE = n - 1;int colS = 0, colE = n - 1;while (count <= n * n) {for (int i = colS; i <= colE; i++) {res[rowS][i] = count;count++;}rowS++;for (int i = rowS; i <= rowE; i++) {res[i][colE] = count;count++;}colE--;for (int i = colE; i >= colS; i--) {res[rowE][i] = count;count++;}rowE--;for (int i = rowE; i >= rowS; i--) {res[i][colS] = count;count++;}colS++;}return res;
}

  

提交情况:

第一次啊!一次提交100%!纪念一下:

转载于:https://www.cnblogs.com/zingg7/p/10645296.html

LeetCode 59 _ Sprial Matrix II 旋转矩阵2相关推荐

  1. LeetCode Search a 2D Matrix II

    问题:给出一个二维数组,其行,列是递增的,和一个要查找的数,问矩阵中是否有要查找的数 思路: 第一种方法是直接暴力查找,在二维数组中查找. 第二种方法是基于对角线上,在行,列上作二分查找 第三种方法递 ...

  2. LeetCode 59. Spiral Matrix II

    59. Spiral Matrix II Given an integer n, generate a square matrix filled with elements from 1 to n2 ...

  3. 59. Spiral Matrix II

    /** 59. Spiral Matrix II * 12.5 by Mingyang* 注意,这里我们说的Matrix就是正方形,不再是长方形了,所以我们会用* 更简单的方法,就是直接上下左右分别加 ...

  4. LeetCode 59. 螺旋矩阵 II LeetCode 54. 螺旋矩阵

    文章目录 1. 题目信息 2. LeetCode 59 解题 3. LeetCode 54. 螺旋矩阵 4.<剑指Offer>面试题29 1. 题目信息 给定一个正整数 n,生成一个包含 ...

  5. LeetCode 240. Search a 2D Matrix II

    LeetCode 240. Search a 2D Matrix II Solution1: 为什么把第74题的代码改都不用改的拿过来就可以AC,一脸懵逼啊... class Solution { p ...

  6. 代码随想录算法训练营第二天 | LeetCode 977.有序数组的平方、​LeetCode 209.长度最小的子数组、LeetCode 59.螺旋矩阵II

    LeetCode 977.有序数组的平方 双指针法:数组其实是有序的, 只不过负数平方之后可能成为最大数了.那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间.此时可以考虑双指针法 ...

  7. LeetCode实战:环形链表 II

    背景 为什么你要加入一个技术团队? 如何加入 LSGO 软件技术团队? 我是如何组织"算法刻意练习活动"的? 为什么要求团队的学生们写技术Blog 题目英文 Given a lin ...

  8. LeetCode59 Spiral Matrix II

    题目: Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. ...

  9. Leetcode 142. Linked List Cycle II

    地址:Leetcode 142. linked list Cycle II 问题描述:检测链表是否存在环,是的话返回环入口,否则返回None. 这道题有两个思路,一个是经典的快慢指针的思路,另外一个是 ...

最新文章

  1. wps图表xy轴颠倒_还在嫌自己的图表丑?50+种可视化图表随你选
  2. 他们创造了编程语言,他们是这个时代伟大的父亲
  3. 有效用例分析阅读笔记一
  4. pycharm提示:Usually first parameter of a method is named 'self'
  5. java内存图怎么画,jvm内存模型怎么画?简单美观的模型图制作软件
  6. U盘装XP系统(含截图,2012最新原创超简单方法)
  7. 中台不火,天理难容!
  8. [编程技巧] C++字符串初始化的优化写法
  9. AsyncTask异步加载的源码分析与实现实例
  10. 2021年中国醋栗果提取物市场趋势报告、技术动态创新及2027年市场预测
  11. [转]使用 HTML5 索引型数据库的待办事项简要列表
  12. RK3128 Linux 源代码,rk3128开发板linux开发使用指南(35页)-原创力文档
  13. Origin中多峰拟合方法
  14. 手机如何安装java软件_如何在手机上安装JAVA平台
  15. 企业信息系统集成发展阶段及ESB对企业的价值体现
  16. macos 升级到 Big Sur 虚拟机的鼠标能动但不能点击
  17. 苹果12轻点背面不灵敏如何解决
  18. 发送邮件(用代码模拟邮箱服务器发送邮件)
  19. Python lambda 介绍
  20. 广告位出售单页HTML源码

热门文章

  1. 交互设计师到底是干嘛的
  2. c# 如何将字符串中用,分开的数字分别存入数组中
  3. [zz]用U盘装win7/XP系统的操作[图解]
  4. 数字图像处理的三个层次
  5. 6个值得推荐的Android开源框架简介
  6. 使用 icon 字体图标出现小方块问题
  7. 凌琦:物联网——一场正在发生的变革
  8. 电路与电子学-第一章直流电路分析方法小概括
  9. SQL Server,Could not obtain exclusive lock on database 'model'
  10. [Silverlight动画]转向行为 - 转向机车