由于需要时间复杂度O(n),所以遍历所有字符串肯定是不行的。所以考虑使用滑动窗口。 具体做法:从0位置开始,右索引每次移动一个步长,当匹配到目标字符之一时,在hashmap中的计数相应加1,并且如果左侧索引处字符计数已经超出要求时或者是非目标字符时,左侧索引可以向右循环移动。这样从左移动到右边就可以找到最小覆盖子串。 代码如下: class Solution { public: string minWindow(string S, string T) { // 初始化hashmap unordered_map<char, int> hs...