LeetCode 209 . 长度最小的子数组
- 209 . 长度最小的子数组
子数组,
数组的一部分, 连续的数组。
滑动窗口。
你看,滑动窗口是不是跟尺蠖的运动很像啊。
尺蠖(chǐ huò)

/**
* 209. 长度最小的子数组
*/
class Solution_209_1 {
public:
int minSubArrayLen(int target, vector<int> &nums) {
int window = 0, size = INT_MAX, l = 0, r = 0;
for (; r < nums.size(); r++) {
window += nums[r];
while (window >= target) {
size = size < (r - l + 1) ? size : (r - l + 1);
window -= nums[l++];
}
}
return size == INT_MAX ? 0 : size;
}
};
LeetCode 59 . 螺旋矩阵 II
- 59 . 螺旋矩阵 II
画家? 手动画一圈
/**
* 59. 螺旋矩阵 II
*/
class Solution_59 {
public:
vector<vector<int>> generateMatrix(int n) {
int l = 0, r = n - 1, t = 0, b = n - 1;// 左 右 顶 底
vector<vector<int>> nums(n, vector<int>(n, 0));
int num = 1;
while (num <= n * n) {
for (int i = l; i <= r; i++) nums[t][i] = num++; // t 行 left -> right
t++;
for (int i = t; i <= b; i++) nums[i][r] = num++; // r 列 top -> bottom
r--;
for (int i = r; i >= l; i--) nums[b][i] = num++; // b 行 right -> left
b--;
for (int i = b; i >= t; i--) nums[i][l] = num++; // l 列 bottom -> top
l++;
}
return nums;
}
};
1082

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



