Golang | Leetcode Golang题解之第59题螺旋矩阵II

题目:

题解:

Go 复制代码
func generateMatrix(n int) [][]int {
    matrix := make([][]int, n)
    for i := range matrix {
        matrix[i] = make([]int, n)
    }
    num := 1
    left, right, top, bottom := 0, n-1, 0, n-1
    for left <= right && top <= bottom {
        for column := left; column <= right; column++ {
            matrix[top][column] = num
            num++
        }
        for row := top + 1; row <= bottom; row++ {
            matrix[row][right] = num
            num++
        }
        if left < right && top < bottom {
            for column := right - 1; column > left; column-- {
                matrix[bottom][column] = num
                num++
            }
            for row := bottom; row > top; row-- {
                matrix[row][left] = num
                num++
            }
        }
        left++
        right--
        top++
        bottom--
    }
    return matrix
}
相关推荐
new coder15 分钟前
[算法练习]Day 4:定长滑动窗口
算法·leetcode
laomocoder1 小时前
golang可观测-无侵入式agent技术原理
开发语言·后端·golang
比特森林探险记1 小时前
Golang GMP 模型深度解析
网络·算法·golang
HotCoffee-GPS1 小时前
Golang学习笔记:context的使用场景
笔记·学习·golang
坚持编程的菜鸟2 小时前
LeetCode每日一题——重复的子字符串
数据结构·算法·leetcode
Swift社区4 小时前
LeetCode 390 消除游戏
算法·leetcode·游戏
海琴烟Sunshine11 小时前
Leetcode 14. 最长公共前缀
java·服务器·leetcode
未知陨落11 小时前
LeetCode:68.寻找两个正序数组的中位数
算法·leetcode
Tony Bai13 小时前
【Go开发者的数据库设计之道】05 落地篇:Go 语言四种数据访问方案深度对比
开发语言·数据库·后端·golang
gopyer13 小时前
180课时吃透Go语言游戏后端开发3:Go语言中其他常用的数据类型
开发语言·游戏·golang·游戏后端开发