[剑指offer]JT19---顺时针打印矩阵(正方形打野)

剑指offer第十九题

题目如下

在这里插入图片描述

思路与代码

就是直接模拟就行了,没啥好说了,正方形就完事了!

class Solution {
    
    
public:
    vector<int> printMatrix(vector<vector<int> > matrix) {
    
    
       int row=matrix.size();
       int col=matrix[0].size();
        vector<int> res;
        if(row==0||col==0) return res;
        int left=0,top=0,right=col-1,bottom=row-1;
        while(left<=right&&top<=bottom){
    
    
            for(int i=left;i<=right;i++) res.push_back(matrix[top][i]);
            for(int i=top+1;i<=bottom;i++) res.push_back(matrix[i][right]);
            for(int i=right-1;i>=left;i--) res.push_back(matrix[bottom][i]);
            for(int i=bottom-1;i>top;i--) res.push_back(matrix[i][left]);
            left++,top++,right--,bottom--;
        }
        return res;
    }
};

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42136832/article/details/114583224
今日推荐