请用滑动窗口算法解决最小覆盖子串问题:给定字符串 s 和 t,返回 s 中涵盖 t 所有字符的最短子串;若不存在则返回空字符串。通过代码实现它。
考察说明
考察滑动窗口算法的理解与实现能力,以及对子串覆盖判定和边界条件的处理
回答思路
- 能正确识别并说明滑动窗口思路,包括窗口的扩展与收缩条件
- 能处理 t 中重复字符的计数,并用哈希表或数组维护窗口内字符频率
- 能正确记录满足覆盖条件的最短子串及其左右边界
- 能处理不存在覆盖子串的边界情况,返回空字符串
- 代码逻辑清晰、复杂度分析正确(时间复杂度 O(n),空间复杂度 O(m))
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。