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

给定一个长度为 n 的整数数组,其中每个元素的值都在 1 到 n 之间,有些元素出现两次,有些出现一次,请找出数组中所有出现两次的元素,要求时间复杂度 O(n) 且不使用额外空间(除返回结果外)。

腾讯后端开发互联网/IT编码实现问题拆解技术原理

考察说明

考察哈希思路的空间优化与原地算法设计

回答思路

  1. 说明利用元素值范围与下标映射的哈希思想
  2. 正确处理重复检测与下标访问的边界
  3. 给出 O(n) 时间、O(1) 额外空间的实现
  4. 能解释取负或交换等原地标记方法的原理
本题已收录答题指导

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

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