Leetcode59螺旋矩阵2

代码:

java 复制代码
class Solution {
    public int[][] generateMatrix(int n) {
        if(n==1){
            int[][] arr = {{1}};
            return arr; 
        }
        int[][] arr = new int[n][n];
        int cnt=1;
        int left = 0,right = n-1,top=0,down=n-1;
        while(left<right){
            for(int i=left;i<right;i++){
                arr[top][i] = cnt++;
            }
            for(int j=top;j<down;j++){
                arr[j][right] = cnt++;
            }
            for(int i=right;i>left;i--){
                arr[down][i] = cnt++;
            }
            for(int j=down;j>top;j--){
                arr[j][left] = cnt++;
            }
            left++;
            right--;
            top++;
            down--;
        }
        if(cnt==n*n){
            arr[left][top] = n*n;
        }
        return arr;
    }
}
相关推荐
lightqjx9 分钟前
【算法】数据结构_并查集
数据结构·算法·并查集
小雨下雨的雨9 分钟前
鸿蒙PC Electron框架实现流体气泡模拟器
前端·人工智能·算法·华为·electron·鸿蒙
txzrxz10 分钟前
广度优先搜索详解(BFS)
算法·宽度优先
8Qi813 分钟前
LeetCode 198:打家劫舍(House Robber)—— 题解 ✅
算法·leetcode·动态规划
无限码力17 分钟前
华为非AI方向0603笔试真题-爆破小游戏(详细思路+多语言题解)
算法·华为·华为笔试真题·华为非ai笔试真题
摇滚侠19 分钟前
git ignore 忽略 .idea 目录 全新项目(尚未提交过 .idea).idea 已经被 Git 跟踪(已提交过)
java·git·intellij-idea
linge_sun19 分钟前
SpringAI SQL 智能助手实战:用自然语言查询数据库
java·人工智能·ai编程
熟悉的新风景19 分钟前
maven常用依赖
java·maven
light blue bird20 分钟前
3C 数码电子BOM 协同工作台组件
java·开发语言·jvm·windows·.net·桌面端
wunaiqiezixin21 分钟前
扫描线算法
算法