本文主要是介绍LeetCode 59 Spiral Matrix II (模拟),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Given a positive integer n
, generate an n x n
matrix
filled with elements from 1
to n2
in spiral order.
Example 1:
Input: n = 3 Output: [[1,2,3],[8,9,4],[7,6,5]]
Example 2:
Input: n = 1 Output: [[1]]
Constraints:
1 <= n <= 20
题目链接:https://leetcode.com/problems/spiral-matrix-ii/
题目大意:按题意生成n*n的螺旋矩阵
题目分析:按题意模拟,右下左上循环赋值
0ms,时间击败100%
class Solution {public int[][] generateMatrix(int n) {int[][] ans = new int[n][n];int tot = n * n, cur = 1, x = 0, y = 0;while (cur <= tot) {while (cur <= tot && y < n && ans[x][y] == 0) {ans[x][y++] = cur++;}x++;y--;while (cur <= tot && x < n && ans[x][y] == 0) {ans[x++][y] = cur++;}y--;x--;while (cur <= tot && y >= 0 && ans[x][y] == 0) {ans[x][y--] = cur++;}x--;y++;while (cur <= tot && x >= 0 && ans[x][y] == 0) {ans[x--][y] = cur++;}y++;x++;}return ans;}
}
这篇关于LeetCode 59 Spiral Matrix II (模拟)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!