后端岗位面试题更新 2026-08-05

给定一个由0和1组成的字符串,你最多可以将k个字符翻转(0变1或1变0),如何计算翻转后能得到的最长连续相同字符子串的长度?请说明解法并分析复杂度。

拼多多集团-PDD后端开发电商编码实现问题拆解

考察说明

考察滑动窗口与双指针算法在有限翻转次数下求最长连续段的能力

回答思路

  1. 正确识别问题可转化为限制窗口内较少字符的个数不超过k
  2. 使用双指针维护窗口,并计算代价决定移动左指针
  3. 正确计算最长长度并说明时间复杂度为O(n)
  4. 能够处理k大于字符串长度或全0全1等边界情况
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。