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

给定一个未排序的整数数组,请找出其中缺失的第一个正整数(即从 1 开始的最小未出现正整数),并说明你的算法复杂度。

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

考察说明

考察数组处理、原地哈希或集合技巧,以及对时间和空间复杂度的权衡

回答思路

  1. 明确题意:找从 1 开始的最小缺失正整数
  2. 能提出至少一种可行解法(如排序后扫描、哈希集合、原地置换)
  3. 分析各解法的时间复杂度和空间复杂度,优选原地置换 O(n) 时间、O(1) 空间
  4. 处理边界情况,如负数、重复元素、数组为空
  5. 简洁地说明算法正确性,如置换后扫描条件 i+1 是否存在
  6. 代码实现正确且逻辑清晰
本题已收录答题指导

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

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