題目描述:
給你乙個字串 s、乙個字串 t,請在字串 s 裡面找出:包含 t 所有字母的最小子串。即要求在源字串s中找到長度最短的子串,這個子串包含目標字串t中的所有字元,字元順序沒有要求。
示例:
輸入: s = 「adobecodebanc」, t = 「abc」
輸出: 「banc」
說明:
如果 s 中不存這樣的子串,則返回空字串 「#」。
如果 s 中存在這樣的子串,我們保證它是唯一的答案。
核心**如下:
#include #include #include #include using namespace std;
string substrofmin(string a, string b)
//當這個字元是滑動窗不缺也不富餘的字元時,計數器加1
if (vec[a[begin++]]++ == 0)
++length;
} }if (len < 1000000)
return a.substr(head, len);
else
return "#";
//return len == 1000000 ? "#" : a.substr(head, len);
}int main()
最小覆蓋子串
給你乙個字串 s 乙個字串 t,請在字串 s 裡面找出 包含 t 所有字母的最小子串。示例 輸入 s adobecodebanc t abc 輸出 banc 說明 如果 s 中不存這樣的子串,則返回空字串 如果 s 中存在這樣的子串,我們保證它是唯一的答案。滑動視窗。設定left,right兩個游標...
最小覆蓋子串
描述 給你乙個字串 s 乙個字串 t,請在字串 s 裡面找出 包含 t 所有字母的最小子串。示例 輸入 s adobecodebanc t abc 輸出 banc 說明 如果 s 中不存這樣的子串,則返回空字串 如果 s 中存在這樣的子串,我們保證它是唯一的答案。實現 class solution ...
最小覆蓋子串
題目 給你乙個字串 s 乙個字串 t,請在字串 s 裡面找出 包含 t 所有字母的最小子串。示例 輸入 s adobecodebanc t abc 輸出 banc 說明 如果 s 中不存這樣的子串,則返回空字串 如果 s 中存在這樣的子串,我們保證它是唯一的答案。思路 參考大佬的解題思路,超級清晰 ...