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

手撕算法:对于有序数组,要求原地去重,使得每个元素最多出现两次,并返回新数组的长度。请写出实现并说明时间复杂度。

猿辅导后端开发教育/培训编码实现问题拆解技术原理

考察说明

考察数组原地操作、双指针技巧与边界处理能力

回答思路

  1. 在O(1)额外空间内完成原地去重
  2. 正确处理长度小于等于2的边界情况
  3. 使用双指针/快慢指针维护有效位置
  4. 给出清晰的时间复杂度分析
  5. 代码逻辑正确且处理了所有相同元素连续出现的情况
本题已收录答题指导

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

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