LeetCode59——Spiral Matrix II
唯一不同,就是对二维数组按照这个顺序进行赋值操作:1,2,3,....n
代码:
class Solution {
public:
vector<vector<int>> generateMatrix(int n) {
//vector<int>temp(n);
vector<vector<int>>matrix(n,vector<int>(n));
int i;
int count = n / 2;
int j;
int number = 1;
int mod = n % 2;
for (i = 0; i < count; i++)
{
for (int j = i; j < n - i - 1; j++)
{
matrix[i][j] = number++;
}
for (int j = i; j < n - 1 - i; j++)
{
matrix[j][n - 1 - i] = number++;
}
for (int j = n - i - 1; j >= i + 1; j--)
{
matrix[n - i - 1][j] = number++;
}
for (int j = n - 1 - i; j >= i + 1; j--)
{
matrix[j][i] = number++;
}
}
if (mod == 1)
matrix[count][count] = number;
return matrix;
}
};
本文介绍了解决LeetCode59螺旋矩阵II问题的方法,该题要求按螺旋顺序填充一个n×n的矩阵,从1开始直到n²。通过递进地填充矩阵的四边并逐步向内缩小范围来实现。
2588

被折叠的 条评论
为什么被折叠?



