class Solution {
public:
vector<vector<int>> generateMatrix(int n) {
int start_i = 0, start_j = 0, count = 1, i, j;
vector<vector<int>> result(n, vector<int>(n));
int circles = n / 2, offset = 1;
while(circles--) {
i = start_i;
j = start_j;
for(; j < n - offset; j++) {
result[i][j] = count++;
}
for(; i < n - offset; i++) {
result[i][j] = count++;
}
for(; j > start_j; j--) {
result[i][j] = count++;
}
for(; i > start_i; i--) {
result[i][j] = count++;
}
offset++;
start_i++;
start_j++;
}
if(n % 2 == 1) {
result[start_i][start_j] = n * n;
}
return result;
}
};
力扣59. 螺旋矩阵 II
最新推荐文章于 2025-11-24 14:44:53 发布
649

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



