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