給定乙個含有 n 個正整數的陣列和乙個正整數 target 。
找出該陣列中滿足其和 ≥ target 的長度最小的 連續子陣列 [numsl, numsl+1, …, numsr-1, numsr] ,並返回其長度。如果不存在符合條件的子陣列,返回 0 。
示例 1:
輸入:target = 7, nums = [2,3,1,2,4,3]
輸出:2
解釋:子陣列 [4,3] 是該條件下的長度最小的子陣列。
示例 2:
輸入:target = 4, nums = [1,4,4]
輸出:1
示例 3:
輸入:target = 11, nums = [1,1,1,1,1,1,1,1]
輸出:0
1 <= target <= 109
1 <= nums.length <= 105
1 <= nums[i] <= 105
使用滑動窗**巧,i是視窗的左端值,j表示視窗的右端值,先移動視窗的右端值,直到找到視窗內的和大於等於 target,求出視窗內陣列下標的長度,這時移動視窗的左端,使整個視窗向右移動,再次判斷視窗內的陣列是否大於給定的值,如果是再次把歡動視窗左端向右移動,如果不是,則移動滑動視窗的右端,知道陣列元素最後乙個數。
長度最小的子陣列
方法 1 暴力 想法按照題目要求直接求。把所有可能的子陣列求和並更新 textans 直到我們找到最優子陣列且和滿足 text geq textsum s 演算法初始化 text textans int max 用變數 ii 從左到右遍歷陣列 用變數 jj 從當前元素到陣列尾部遍歷 將 ii 到 j...
長度最小的子陣列
給定乙個含有n個正整數的陣列和乙個正整數s 找出該陣列中滿足其和 s的長度最小的連續子陣列。如果不存在符合條件的連續子陣列,返回 0。示例 輸入 s 7,nums 2,3,1,2,4,3 輸出 2解釋 子陣列 4,3 是該條件下的長度最小的連續子陣列。高階 如果你已經完成了o n 時間複雜度的解法,...
長度最小的子陣列
問題 給定乙個含有 n 個正整數的陣列和乙個正整數 s 找出該陣列中滿足其和 s 的長度最小的連續子陣列。如果不存在符合條件的連續子陣列,返回 0。示例 輸入 s 7,nums 2,3,1,2,4,3 輸出 2 解釋 子陣列 4,3 是該條件下的長度最小的連續子陣列。分析 暴力法 求出每個子陣列的和...