必威体育Betway必威体育官网
当前位置:首页 > IT技术

领扣笔记

时间:2019-09-11 14:11:04来源:IT技术作者:seo实验室小编阅读:89次「手机版」
 

领扣

螺旋矩阵 II

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

示例:

输入: 3

输出:

[

[ 1, 2, 3 ],

[ 8, 9, 4 ],

[ 7, 6, 5 ]

]

我自己写的解答,AC,记录笔记

class Solution {
    public int[][] generateMatrix(int n) {
        if (n == 0) return null;
        int[][] res = new int[n][n];
        int x = 0, y = 0, j = 1, num = n;
        while (n > 0) {
            for (int i = 0; i < n - 1; i++) {
                res[x][y++] = j++;
            }
            for (int i = 0; i < n - 1; i++) {
                res[x++][y] = j++;
            }
            for (int i = 0; i < n - 1; i++) {
                res[x][y--] = j++;
            }
            for (int i = 0; i < n - 1; i++) {
                res[x--][y] = j++;
            }
            x++;
            y++;
            n -= 2;
        }
        //注意这里,如果n为奇数的话,到最后一次最中心的元素因为for循环中条件没有满足不会去赋值,所以这里要检验一下最后一个元素赋值是否被跳过了
        if (n == -1) {
            res[(num-1)/2][(num-1)/2] = j;
            
        }
        return res;
    }
}

路漫漫其修远兮,共勉

相关阅读

操作系统学习笔记——北京大学陈向群老师课后及习题答

操作系统的运行环境 1、(5分)控制和状态寄存器用于控制处理器的操作,在某种特权级别下可以访问、修改。下列哪一个不是控制和状态

[RK3399][Android7.1] 移植笔记 --- 音频Codec RT5640

Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 原理图: 数据走I2S1通道 控制走I2C1通道 输出走HPOUTL/HPOUTR 改

Oracle学习笔记:sqlplus用户登录

1 sqlplus 登录 本地登录 (登录数据库服务器) Oracle 登录 sqlplus 账户名/密码 as 角色名 1.1 sys登录 例如: sqlplus sys/oracle

笔记本电脑哪个牌子好,教你如何选购笔记本电脑

笔记本电脑是台式PC的微缩与延伸,也是现代社会对电脑的一种需求。与台式机相比,它们是完全便携的,而且消耗的电能和产生的噪音都比较

读书笔记之与神对话·1

与神对话·1 - 尼尔·唐纳德·沃尔什前言Chapter 01Chapter 02Chapter 03Chapter 04Chapter 05Chapter 06Chapter 07Chapter 08Ch

分享到:

栏目导航

推荐阅读

热门阅读