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

有10亿个数字,需要找出其中最大的100个数,要求时间复杂度低于O(n log n)。请给出你的算法思路和实现要点。

Soul后端开发编码实现

考察说明

考察大数据量下TopK问题的算法设计与复杂度分析

回答思路

  1. 明确指出需要使用堆或快速选择等方案
  2. 能分析堆解法的时间复杂度为O(n log k),k=100时低于O(n log n)
  3. 能比较不同方案的适用场景,如内存限制、精确性要求
  4. 能说明大数据量下的边界处理,如数据分布、内存占用
本题已收录答题指导

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

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