思路:滑動視窗,搞兩個指標l=r
=0l=r=0
l=r=
0,把r
rr右移直到滿足題意,然後再把l
ll右移直到不滿足題意,這時記錄一下最小值,重複這個過程即可。
class
solution
siz=s.
size()
;int l=
0,r=0;
string ans;
while
(rif(ct)
return ans;
int al=l,ar=r-1;
while(1
) ans=s.
substr
(al,ar-al+1)
;return ans;}}
;
76 最小覆蓋子串!!(滑動視窗)
給你乙個字串 s 乙個字串 t,請在字串 s 裡面找出 包含 t 所有字母的最小子串。示例 輸入 s adobecodebanc t abc 輸出 banc 說明 困難 分析 滑動視窗法。外迴圈 right 內迴圈 left 當外迴圈迴圈到count count n and left right時,...
滑動視窗 LeetCode76 最小覆蓋子串
給你乙個字串 s 乙個字串 t 請你設計一種演算法,可以在 o n 的時間複雜度內,從字串 s 裡面找出 包含 t 所有字元的最小子串。輸入 s adobecodebanc t abc 輸出 banc 左右指標輪流前進,視窗大小增增減減,視窗不斷向右滑動 最短子串開始位置和長度 start 0 mi...
leetcode76 最小覆蓋子串 滑動視窗
題目 思路 滑動視窗 使用new int 128 陣列儲存t中每個字元出現的次數 使用new int 128 陣列儲存視窗中每個字元出現的次數 使用minlength表示最小子串長度。使用count記錄目前視窗中的有效字元數,當count t.length 時,視窗長度為乙個包含t中所有字元的子串的...