problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
leetcode::minimum_size_subarray_sum::Solution类 参考

#include <leetcode.h>

静态 Public 成员函数

static int minSubArrayLen (int target, vector< int > &nums)
 

详细描述

在文件 leetcode.h2348 行定义.

成员函数说明

◆ minSubArrayLen()

int leetcode::minimum_size_subarray_sum::Solution::minSubArrayLen ( int  target,
vector< int > &  nums 
)
static

在文件 leetcode.cpp6208 行定义.

6208 {
6209 int r = nums.size() - 1;
6210 int l = r;
6211 int sum = nums[r];
6212 int ans = 0;
6213 while(l >= 0 && l <= r) {
6214 if(nums[l] >= target) {
6215 return 1;
6216 }
6217 while(l - 1 >= 0 && sum + nums[l - 1] < target) {
6218 sum += nums[--l];
6219 }
6220 if(l - 1 >= 0) {
6221 l--;
6222 sum += nums[l];
6223 if(ans == 0) {
6224 ans = r - l + 1;
6225 } else {
6226 ans = min(ans, r - l + 1);
6227 }
6228 } else {
6229 break;
6230 }
6231 do {
6232 sum -= nums[r--];
6233 if(sum >= target) {
6234 ans = min(ans, r - l + 1);
6235 }
6236 } while(sum >= target && r >= l);
6237 }
6238 return ans;
6239 }

被这些函数引用 leetcode::minimum_size_subarray_sum::TEST().


该类的文档由以下文件生成: