leetcode 59.螺旋矩阵

记录一下,觉得倒水思想来做 总体看起来还是比较清晰的。

bash 复制代码
class Solution {
public:
    vector<vector<int>> generateMatrix(int n) {
        int a[4][2] = {{0,1}, {1,0}, {0,-1},{-1,0}};

        int direction=0;  //方向
        int num=0;

        int S =n*n;
        int x = 0;
        int y = 0;
        
        vector<vector<int>> Matrix(n, vector<int>(n, 0));

        while(num!=S){
            num++;
            Matrix[x][y]=num;

            x+=a[direction][0];
            y+=a[direction][1];
            if(x>=n || y>=n || x<0 || y<0 || Matrix[x][y]!=0){
                x-=a[direction][0];
                y-=a[direction][1];
                direction = (direction+1)%4;
                x+=a[direction][0];
                y+=a[direction][1];
            } 
        }  
        return  Matrix;

    }
};
相关推荐
澈20711 小时前
C++并查集:高效解决连通性问题
java·c++·算法
旖-旎12 小时前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
企客宝CRM13 小时前
2026年中小企业CRM选型指南:企客宝CRM处于什么位置?
android·算法·企业微信·rxjava·crm
橙淮13 小时前
二叉树核心概念与Java实现详解
数据结构·算法
米罗篮14 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程
橙淮14 小时前
双指针法:高效算法解题的利器
算法
初心未改HD14 小时前
深度学习之MLP与反向传播算法详解
人工智能·深度学习·算法
刀法如飞14 小时前
【Go 字符串查找的 20 种实现方式,用不同思路解决问题】
人工智能·算法·go
2601_9577867714 小时前
短视频矩阵全链路自动化系统的技术架构与性能实测
矩阵·架构·自动化