AcWing
  • 首页
  • 活动
  • 题库
  • 竞赛
  • 商店
  • 应用
  • 文章
    • 题解
    • 分享
    • 问答
  • 吐槽
  • 登录/注册

LeetCode 59. 螺旋矩阵 II C#    原题链接    中等

作者: 作者的头像   hpstory ,  2022-08-02 21:46:50 ,  所有人可见 ,  阅读 24


2


C# 代码

public class Solution {
    public int[][] GenerateMatrix(int n) {
        int[][] result = new int[n][];
        for (int a = 0; a < n; a++){
            result[a] = new int[n];
        }
        bool[,] used = new bool[n, n];
        int[] dx = new int[4]{0, 1, 0, -1}, dy = new int[4]{1, 0, -1, 0};
        int d = 0, i = 0, j = 0;
        for (int k = 1; k <= n * n; k++){
            result[i][j] = k;
            used[i, j] = true;
            int x = i + dx[d], y = j + dy[d];
            if (x < 0 || x >= n || y < 0 || y >= n || used[x, y]){
                d = (d + 1) % 4;
                x = i + dx[d];
                y = j + dy[d];
            }

            i = x;
            j = y;
        }

        return result;
    }
}

0 评论

你确定删除吗?
1024
x

© 2018-2022 AcWing 版权所有  |  京ICP备17053197号-1
用户协议  |  常见问题  |  联系我们
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标
请输入绑定的邮箱地址
请输入注册信息