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

如何找到数组中乘积最大的两个数,要求时间复杂度 O(n)、空间复杂度 O(1)?

腾讯云智研发后端开发互联网/IT问题拆解技术原理

考察说明

考察线性扫描、极值维护和边界条件处理能力

回答思路

  1. 明确算法思路:同时追踪最大与最小值以处理负数情况
  2. 说明需考虑正负号对乘积的影响
  3. 分析时间与空间复杂度并确认满足约束
  4. 讨论只有两个元素或含零等边界情况
本题已收录答题指导

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

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