题目描述:
给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。

示例1:

输入:
[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]
]
输出: [1,2,3,6,9,8,7,4,5]

示例 2:

输入:
[[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12]
]
输出: [1,2,3,4,8,12,11,10,9,5,6,7]

算法:按层循环,依次按第一行、最后一列、最后一行、第一列的顺序循环,之后脱去第一层…

public static IList<int> SpiralOrder(int[][] matrix){List<int> result=new List<int>();int m=matrix.Length,n=matrix[0].Length;int line1=0;int line2=m-1;int list1=0,list2=n-1;while (result.Count < m * n){for (int i = list1; i <= list2; i++)  result.Add(matrix[line1][i]);line1++;for (int i = line1; i <= line2; i++)  result.Add(matrix[i][list2]); list2--;for (int i = list2; i >= list1; i--) result.Add(matrix[line2][i]); line2--; for (int i = line2; i >= line1; i--) result.Add(matrix[i][list1]); list1++;}if (result.Count > m * n) result.RemoveRange(m * n, result.Count - m * n);return result;}


LeetCode 19 螺旋矩阵相关推荐

  1. LeetCode 885. 螺旋矩阵 III

    1. 题目 在 R 行 C 列的矩阵上,我们从 (r0, c0) 面朝东面开始 这里,网格的西北角位于第一行第一列,网格的东南角位于最后一行最后一列. 现在,我们以顺时针按螺旋状行走,访问此网格中的每 ...

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

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

  3. LeetCode:螺旋矩阵【54】

    LeetCode:螺旋矩阵[54] 题目描述 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素. 示例 1: 输入: [[ 1, 2, 3 ],[ ...

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

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

  5. 螺旋矩阵c++语言_一起刷 leetcode 之螺旋矩阵(头条和美团真题)

    微信公众号:每天晒白牙 关注可了解更多编程知识.问题或建议,请公众号留言;如果你觉得文章对你有帮助,欢迎关注与转发 题目描述 给定一个包含 m*n 个元素的矩阵(m 行,n 列),请按顺时针螺旋顺序, ...

  6. LeetCode 54.螺旋矩阵 - 原地修改

    [LetMeFly]54.螺旋矩阵 - 原地修改 力扣题目链接:https://leetcode.cn/problems/spiral-matrix/ 给你一个 m行 n列的矩阵 matrix,请按照 ...

  7. LeetCode 59. 螺旋矩阵 II

    和54.螺旋矩阵 类似 public static int[][] generateMatrix(int n) {int[][] a = new int[n][n];if(n<1)return ...

  8. Java实现 LeetCode 54 螺旋矩阵

    54. 螺旋矩阵 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素. 示例 1: 输入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], ...

  9. 力扣(LeetCode)54. 螺旋矩阵(C++)

    思路分析 螺旋矩阵,又称蛇形矩阵,这是说,遍历它就像蛇一样一环一环的向内滑动. 遍历时变向,我们需要一个技巧.开方向数组, d x , d y dx,dy dx,dy,分别代表 x x x 的移动方向 ...

最新文章

  1. 【Python基础】Matplotlib 实操干货,38个案例带你从入门到进阶!
  2. JVM 调优实战--VisualVM综合分析可视化工具的使用教程(含远程JMX连接)
  3. 演练GridView控件显示目录图片
  4. P1613-跑路【Floyd,倍增】
  5. 常用数据结构--线性结构
  6. iOStextField/textView在输入时限制emoji表情的输入
  7. 模型秒变API只需一行代码,支持TensorFlow等框架
  8. 使用Sysmon分析宏病毒(Macros Downloader)
  9. python while循环的用法_Python while循环语句详解
  10. 局域网DNS劫持,输入网址会跳转到其他的广告页
  11. GoJS学习-节点渐变背景色
  12. 7kyu Jaden Casing Strings
  13. Chrome 改进 Enhanced Safe Browsing 功能,强化扩展程序和文件下载安全性
  14. python:defaultdict
  15. js写可以暂停的电子时钟
  16. 一件登录facebook_Facebook抵制抵制是防火的,那是一件好事
  17. C#使用NPOI将txt文本批量转为excel文件
  18. 概念模型、逻辑模型和物理模型的重新理解
  19. Mobizen免帐号版
  20. python 统计其中字符串中字母个数

热门文章

  1. 解析wiki数据(带标点,保留格式)
  2. 《通信网》专题八:接入网技术
  3. 【Android 你的SurfaceView休眠了吗】
  4. 佩戴安全帽数据集使用说明和下载
  5. Tomcat课堂笔记
  6. 李嘉诚能否再续神话?“长科版”上市内幕
  7. ES match query
  8. python跨年表白神器--你值得拥有!
  9. 加密算法与大数据安全
  10. mod_rewrite htaccess 简单使用