链接:https://leetcode-cn.com/problems/shun-shi-zhen-da-yin-ju-zhen-lcof/

题解:https://leetcode-cn.com/problems/shun-shi-zhen-da-yin-ju-zhen-lcof/solution/shun-shi-zhen-da-yin-ju-zhen-by-leetcode-solution/

class Solution {
public:vector<int> spiralOrder(vector<vector<int>>& matrix) {vector<int> result;if(matrix.size() == 0) {return result;}int left = 0;int right = matrix[0].size()-1;int top = 0;int bottom = matrix.size()-1;// 先申请空间防止result扩容result.resize((matrix.size()*matrix[0].size()), 0);int cur = 0;while(left <= right && top <= bottom) {for(int i = left; i <= right; ++i) {result[cur++] = matrix[top][i];}for(int i = top+1; i <= bottom; ++i) {result[cur++] = matrix[i][right];}if(left < right && top < bottom) {for(int i = right-1; i >= left; --i) {result[cur++] = matrix[bottom][i];}for(int i = bottom-1; i >= top+1; --i) {result[cur++] = matrix[i][left];}}++left;--right;++top;--bottom;}return result;}
};

复杂度分析:

时间复杂度:O(mn),其中 m和 n分别是输入矩阵的行数和列数。矩阵中的每个元素都要被访问一次。

空间复杂度:O(1)。除了输出数组以外,空间复杂度是常数。

面试题29. 顺时针打印矩阵/54. 螺旋矩阵相关推荐

  1. 剑指offer:面试题29. 顺时针打印矩阵

    题目:顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9 ...

  2. leetcode —— 面试题29. 顺时针打印矩阵

    输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] - ...

  3. 面试题29. 顺时针打印矩阵

    Title 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7, ...

  4. 剑指offer面试题29. 顺时针打印矩阵(边界问题)

    题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 思路 详见链接 代码 class Solution:def spiralOrder(self, matrix:[[int]]) ...

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

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

  6. 《LeetCode力扣练习》剑指 Offer 29. 顺时针打印矩阵 Java

    <LeetCode力扣练习>剑指 Offer 29. 顺时针打印矩阵 Java 一.资源 题目: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字. 示例 1: 输入:matr ...

  7. 模拟法螺旋遍历矩阵:54.螺旋矩阵(Kotlin)

    54. 螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9] ...

  8. Java实现 LeetCode 54 螺旋矩阵

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

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

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

最新文章

  1. Payara基金会发布全面支持MicroProfile 2.0的5.183版Payara Server和Payara Micro
  2. Nginx多站点设置
  3. MSE病毒库离线更新包
  4. H5开发中的问题总结
  5. “大数据杀熟”成网络热词,科技公司信任危机到来?
  6. SharePoint 编程指南(转)
  7. datatable???
  8. 【Linux从青铜到王者】第二十四篇:Linux网络基础第四篇之WebSocket协议
  9. Unity游戏热更新
  10. BFS宽度优先搜索(新冠病毒的传播)
  11. 从秋招看名堂,哪些大厂值得程序员去?
  12. arcgis html图像标记,图片标记
  13. Java——腐烂的橘子
  14. 猿圈 题库_猿圈AI考试题库 智慧在线考试宝典
  15. Afnetworking访问遇到3840_错误
  16. MS11-030-DNS 解析漏洞复现
  17. 新手必须掌握的20个摄影构图法 转
  18. 亚马逊自动下单怎么设置
  19. 消防系统计算机网络安全,麦积消防中队组织开展网络安全排查
  20. VS2012最新特性

热门文章

  1. linux命令详解之df(6/19)
  2. Android系统性能调优工具介绍
  3. linux 下安装gsl
  4. 如何优雅地用ARM开发板搭建服务器
  5. 通过日志审计追踪外部***
  6. Go Elasticsearch 增加快速入门
  7. Go Elasticsearch 查询快速入门
  8. n 个骰子点数和及各自出现的概率
  9. Shiro安全框架案例
  10. 《Java程序设计》第4周学习总结