[Leetcode]Spiral Matrix II

来源:互联网 发布:js给数组赋值 编辑:程序博客网 时间:2024/06/08 10:13

//用Java模拟,写起来比较方便

public class Solution {

    public int[][] generateMatrix(int n) {
        int [][] res= new int[n][n]; 
        if(n<=0)return res;
        //int res[5050][5050];
        int total = n/2;
        int mark = 1;
        for(int i=0;i<total;i++)
        {
            for(int up = i;up<n-i;up++)
            res[i][up]=mark++;
            for(int right = i+1;right<n-i-1;right++)
            res[right][n-i-1]=mark++;
            for(int down = n-i-1;down>=i;down--)
            res[n-i-1][down]=mark++;
            for(int left = n-i-1-1;left>=i+1;left--)
            res[left][i] = mark++;
        }
        if(n%2!=0)
        res[n/2][n/2]=mark;
        return res;
    }
}
0 0
原创粉丝点击