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

给定一个整数数组,如何找出其中只出现一次的数字?数组中其他数字都出现两次。如果只要求解决单数版本,如何用最低时间复杂度与额外空间实现?若要求找出两个只出现一次的数字,又该如何扩展?

帆软软件后端开发专业服务编码实现问题拆解技术原理

考察说明

考察位运算异或应用、时间空间复杂度分析与问题变体扩展能力

回答思路

  1. 能说明利用异或运算的交换律与结合律解决问题
  2. 对单数情况给出线性时间、常数空间的解法并解释原理
  3. 对双数情况能提出扩展方案:先整体异或,再按结果某一位分组分别异或
  4. 能分析时间复杂度和额外空间复杂度,并讨论使用哈希表等替代方案的优劣
本题已收录答题指导

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

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