spiral-matrix

2019-07-24  本文已影响0人  DaiMorph
class Solution {
public:
    vector<int> spiralOrder(vector<vector<int> > &matrix) {
        vector<int>res;
        if(matrix.size()==0)return res;
        int up=0,down=matrix.size()-1,left=0,right=matrix[0].size()-1;
        while(up<=down&&left<=right)
        {
            for(int j=left;j<=right;j++)res.push_back(matrix[up][j]);
            for(int i=up+1;i<=down;i++)res.push_back(matrix[i][right]);
            for(int j=right-1;j>=left&&up!=down;j--)res.push_back(matrix[down][j]);
            for(int i=down-1;i>up&&left!=right;i--)res.push_back(matrix[i][left]);
            up++,down--,left++,right--;
        }
        return res;
    }
};
上一篇 下一篇

猜你喜欢

热点阅读