
正文
leecode第五十九题(螺旋矩阵 II)
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示

class Solution {
public:
vector<vector<int>> generateMatrix(int n) {
if(n==)//特殊情况
{
vector<vector<int>> empty;
return empty;
} vector<vector<int>> res;
for(int i=;i<n;i++)//要先初始化
{
vector<int> zeros;
for(int j=;j<n;j++)
zeros.push_back();
res.push_back(zeros);
} int num=;
for(int i=;i<=(n-)/;i++)
{
for(int j=i;j<(n-i);j++)//还是分析,第一行
{
res[i][j]=num;
num++;
} for(int j=i+;j<(n-i);j++)//最后一列
{
res[j][n--i]=num;
num++;
} for(int j=n--i;j>=i;j--)//最后一行
{
res[n--i][j]=num;
num++;
} for(int j=n--i;j>i;j--)//第一列
{
res[j][i]=num;
num++;
}
} return res;
}
};
分析:
今天散会早,忍不住又做了一道。和上个题异曲同工,但是这里需要初始化一下。







