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

题目:

题解:

java 复制代码
class Solution {
    public int[][] generateMatrix(int n) {
        int num = 1;
        int[][] matrix = new int[n][n];
        int left = 0, right = n - 1, top = 0, bottom = n - 1;
        while (left <= right && top <= bottom) {
            for (int column = left; column <= right; column++) {
                matrix[top][column] = num;
                num++;
            }
            for (int row = top + 1; row <= bottom; row++) {
                matrix[row][right] = num;
                num++;
            }
            if (left < right && top < bottom) {
                for (int column = right - 1; column > left; column--) {
                    matrix[bottom][column] = num;
                    num++;
                }
                for (int row = bottom; row > top; row--) {
                    matrix[row][left] = num;
                    num++;
                }
            }
            left++;
            right--;
            top++;
            bottom--;
        }
        return matrix;
    }
}
相关推荐
代码匠心3 分钟前
从零开始学Flink:状态管理与容错机制
java·大数据·后端·flink·大数据处理
zhougl99612 分钟前
Java内部类详解
java·开发语言
茶本无香19 分钟前
设计模式之十二:模板方法模式Spring应用与Java示例详解
java·设计模式·模板方法模式
灯火不休ᝰ1 小时前
[kotlin] 从Java到Kotlin:掌握基础语法差异的跃迁指南
java·kotlin·安卓
KoiHeng1 小时前
Java的文件知识与IO操作
java·开发语言
czlczl200209251 小时前
Spring Data Redis
java·redis·spring
知识即是力量ol1 小时前
在客户端直接上传文件到OSS
java·后端·客户端·阿里云oss·客户端直传
闻哥1 小时前
深入理解 Spring @Conditional 注解:原理与实战
java·jvm·后端·python·spring
煜磊1 小时前
MD5加盐值-注册与登录
java·开发语言
东东5161 小时前
校园求职招聘系统设计和实现 springboot +vue
java·vue.js·spring boot·求职招聘·毕设