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;

    }
};
相关推荐
sheeta199818 小时前
LeetCode 每日一题笔记 日期:2026.06.06 题目:2196. 根据描述创建二叉树
笔记·算法·leetcode
小欣加油19 小时前
leetcode994 腐烂的橘子
数据结构·c++·算法·leetcode·bfs
救救孩子把19 小时前
88-机器学习与大模型开发数学教程-8-6 矩阵分解与低秩近似在推荐系统中的应用
人工智能·机器学习·矩阵
不辣的皮蛋君19 小时前
2026年短视频矩阵系统实战:如何用工具实现多平台一键分发,效率提升300%
人工智能·线性代数·矩阵
QuZero19 小时前
Guava Cache Deep Dive
java·后端·算法·guava
随意起个昵称19 小时前
线性dp-LIS题目4(A Twisty Movement)
算法·动态规划
Felven20 小时前
B. Fair Numbers
数据结构·算法
人道领域20 小时前
【LeetCode刷题日记】93.复原IP地址
java·开发语言·算法·leetcode
jarreyer20 小时前
【算法记录1】模型训练问题
算法
Felven20 小时前
D. Friends and the Restaurant
算法