题解 | #螺旋矩阵(二)#

螺旋矩阵(二)

https://www.nowcoder.com/practice/2c8078a728834e81a046fdefdea049aa

class Solution {
public:
    vector<vector<int> > Matrix(int n) {
        vector<vector<int>> f(n,vector<int>(n,0));
        vector<vector<int>> ans(n,vector<int>(n));
        int i = 1,x = 0,y = 0;
        while(i<=n*n)
        {   
            if(!f[x][y])
            {
                ans[x][y] = i;
                f[x][y] = 1; 
                i++;
            }
            while(!f[x][y+1] && y+1<n) {
                y++;
                ans[x][y] = i;
                f[x][y] = 1;
                i++;
            }
            while(!f[x+1][y] && x+1<n) {
                x++;
                ans[x][y] = i;
                f[x][y] = 1;   
                i++;
            }
            while(!f[x][y-1] && y-1>=0){
                y--;
                ans[x][y] = i;
                f[x][y] = 1;    
                i++;
            }
            while(!f[x-1][y] && x-1>=0) {
                x--;
                ans[x][y] = i;
                f[x][y] = 1;    
                i++;
            }
        }
        return ans;
    }
};

全部评论

相关推荐

牛大宝儿236:还没入职就PUA,[发火我之前遇到一个月给500块钱的
点赞 评论 收藏
分享
03-29 19:11
门头沟学院 Java
wyp_davis:是可以这样的,不过只要交钱就是假的
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务