给定一个由大写字母组成的字符串,允许将其中最多 k 个字符替换为任意其他字符。请找出替换后能得到的最长重复子串(即字符串中某个字符连续出现的最长长度)。请实现函数并分析时间复杂度。
考察说明
考察滑动窗口与双指针算法在字符替换问题上的应用
回答思路
- 准确理解题意:允许替换 k 个字符,求最长连续相同字符长度
- 使用双指针维护窗口,统计窗口内出现频率最高的字符,计算需替换字符数
- 窗口缩放条件判断正确,边界处理无误
- 给出正确的时间复杂度 O(n) 与空间复杂度 O(1)
- 编写代码清晰、可运行,并能用示例验证
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。