mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 00:43:04 +08:00
refactor: 优化 0209.长度最小的子数组.md 的 Typescript 写法
This commit is contained in:
@ -270,22 +270,21 @@ var minSubArrayLen = function(target, nums) {
|
||||
|
||||
```typescript
|
||||
function minSubArrayLen(target: number, nums: number[]): number {
|
||||
let left: number = 0, right: number = 0;
|
||||
let res: number = nums.length + 1;
|
||||
let sum: number = 0;
|
||||
while (right < nums.length) {
|
||||
sum += nums[right];
|
||||
if (sum >= target) {
|
||||
// 不断移动左指针,直到不能再缩小为止
|
||||
while (sum - nums[left] >= target) {
|
||||
sum -= nums[left++];
|
||||
}
|
||||
res = Math.min(res, right - left + 1);
|
||||
}
|
||||
right++;
|
||||
let left: number = 0,
|
||||
res: number = Infinity,
|
||||
subLen: number = 0,
|
||||
sum: number = 0;
|
||||
for (let right: number = 0; right < nums.length; right++) {
|
||||
sum += nums[right];
|
||||
while (sum >= target) {
|
||||
subLen = right - left + 1;
|
||||
res = Math.min(res, subLen);
|
||||
sum -= nums[left];
|
||||
left++;
|
||||
}
|
||||
return res === nums.length + 1 ? 0 : res;
|
||||
};
|
||||
}
|
||||
return res === Infinity ? 0 : res;
|
||||
}
|
||||
```
|
||||
|
||||
### Swift:
|
||||
|
Reference in New Issue
Block a user