后端岗位面试题更新 2026-08-05
请设计一个算法,在无序数组中找到第 k 大的数,并要求时间复杂度和空间复杂度尽可能低。
深圳虾皮信息科技有限公司后端开发互联网/IT编码实现问题拆解技术原理
考察说明
考察快速选择、堆或排序算法的复杂度分析与边界处理
回答思路
- 明确指出 k 的范围假设(如 k 从 1 开始)
- 比较不同方法(排序、堆、快速选择)的复杂度
- 实现或说明快速选择算法及最坏情况优化
- 处理重复元素和 k 超出数组长度的情况
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。