题目:https://leetcode-cn.com/problems/spiral-matrix-ii/
代码:
class Solution {
public:
vector<vector> generateMatrix(int n) {
vector<vector<int>> matrix(n,vector<int>(n,0));
int i = 0;
int size = n*n;
if (n <= 0)
return matrix;
int layer = 0;
int c = 1;
for (; layer <= n / 2; layer++)
{
for (int i = layer; i <= n - 1 - layer; i++)
{
matrix[layer][i] = c++;
}
for (int i = layer + 1; i <= n - 1 - layer; i++)
{
matrix[i][n - 1 - layer] = c++;
}
for (int i = n - 1 - layer - 1; i >= layer ; i--)
{
matrix[n - 1 - layer][i] = c++;
}
for (int i = n - 1 - layer - 1; i >= layer + 1; i--)
{
matrix[i][layer ] = c++;
}
}
return matrix;
}
};
结果: