螺旋矩阵2

题目描述:

给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。

示例:

输入: 3
输出:
[
 [ 1, 2, 3 ],
 [ 8, 9, 4 ],
 [ 7, 6, 5 ]
]

完整代码:

class Solution:
    def generateMatrix(self, n: int) -> List[List[int]]:
        result = [[0 for j in range(n)] for i in range(n)]
        i, j, di, dj = 0, 0, 0, 1
        for p in range(n ** 2):
            result[i][j] = p + 1
            if result[(i + di) % n][(j + dj) % n] != 0:
                di, dj = dj, -di
            i += di
            j += dj
        return result


全部评论

相关推荐

今天 11:10
武汉纺织大学 C++
点赞 评论 收藏
分享
2024-12-23 10:55
已编辑
大连理工大学 Java
牛客930504082号:华子综测不好好填会挂的,而且填的时候要偏向牛马选项
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务