LeetCode-Spiral Matrix-螺旋矩阵
生活随笔
收集整理的這篇文章主要介紹了
LeetCode-Spiral Matrix-螺旋矩阵
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
https://oj.leetcode.com/problems/spiral-matrix/
題目沒難度,就是循環把每一層的螺旋打印出來即可。需要注意每次螺旋大小縮小2,計算相應的位置并考慮左邊界等于右邊界的情況。
class Solution { public:int n,m;int cn,cm;vector <int> tot;vector<vector<int> > matrix;void Print(){int l=(m-cm)/2;int u=(n-cn)/2;int r=m-l-1;int d=n-l-1;if (l==r){for (int i=u;i<=d;i++){tot.push_back(matrix[i][l]);}return;}if (u==d){for (int i=l;i<=r;i++){tot.push_back(matrix[u][i]);}return;}for (int i=l;i<r;i++){tot.push_back(matrix[u][i]);}for (int i=u;i<d;i++){tot.push_back(matrix[i][r]);}for (int i=r;i>l;i--){tot.push_back(matrix[d][i]);}for (int i=d;i>u;i--){tot.push_back(matrix[i][l]);}}vector<int> spiralOrder(vector<vector<int> > &matrix) {this->matrix=matrix;n=matrix.size();if (n==0){return tot;}m=matrix[0].size();if (m==0){return tot;}cn=n;cm=m;while(cn>0 && cm>0){Print();cn-=2;cm-=2;}return tot;} };
轉載于:https://www.cnblogs.com/yangsc/p/4007889.html
總結
以上是生活随笔為你收集整理的LeetCode-Spiral Matrix-螺旋矩阵的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常用的电子产品安规基础标准 - IEC
- 下一篇: 2017年度优秀软件工程造价师等评选通知