美文网首页
59. 螺旋矩阵 II

59. 螺旋矩阵 II

作者: 郭昊峰 | 来源:发表于2018-12-24 20:55 被阅读0次

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

示例:

输入:3

输出:[ [ 1, 2, 3 ], 

           [ 8, 9, 4 ],

           [ 7, 6, 5 ]]

这题还是有点绕的,最开始做主要容易忽略中间的[1][1] = 9 的赋值,思路:

1:把一次→↓←↑的赋值看作一次循环,在值i<=n*n为真时,不断重复这个循环。

2:在一次循环内,当完成←→赋值的时候,↑↓赋值的最大值减去1。↑↓同理。

public class Solution {

    public int[,] GenerateMatrix(int n) {

        int[,] arr = new int[n,n];

            int num = 1;//赋值的值

            int col = n;//循环赋值时的纵向次数

            int row = n;//循环赋值时的横向次数

            int x = 0;//标记数组纵向

            int y = -1;//标记数组横向

            while (num <=n * n)

            {

                for (int i = 0; i < row; i++)

                {

                    arr[x,y=y+1] = num;

                    num++;

                }

                col--;

                for (int i = 0; i < col; i++)

                {

                    arr[x = x + 1, y] = num;

                    num++;

                }

                row--;

                for (int i = 0; i < row; i++)

                {

                    arr[x, y = y - 1] = num;

                    num++;

                }

                col--;

                for (int i = 0; i < col; i++)

                {

                    arr[x = x - 1, y] = num;

                    num++;

                }

                row--;

            }

            return arr;

    }

}

相关文章

  • 59. 螺旋矩阵 II

    59. 螺旋矩阵 II 注意当n为奇数的时候,最中心的点走不到,要单独赋值一下

  • 59.螺旋矩阵II

  • 59. 螺旋矩阵 II

    给定一个正整数n,生成一个包含 1 到n2所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入:3输出:[...

  • 59. 螺旋矩阵 II

    解法

  • 59. 螺旋矩阵 II

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

  • 【Leetcode】59. 螺旋矩阵 II

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

  • 59. 螺旋矩阵 II(medium)

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

  • leetcode 59. 螺旋矩阵 II

    题目描述 给定一个正整数,生成一个包含到所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。相关话题: 数组    ...

  • 59. Spiral Matrix II/螺旋矩阵 II

    Given a positive integer n, generate a square matrix fill...

  • leetcode题目59. 螺旋矩阵 II

    题目描述 链接:https://leetcode-cn.com/problems/spiral-matrix-ii...

网友评论

      本文标题:59. 螺旋矩阵 II

      本文链接:https://www.haomeiwen.com/subject/airtlqtx.html