后端岗位面试题更新 2026-08-05
请实现一个 LRU 缓存,要求 get 和 put 操作的时间复杂度均为 O(1)。
小红书后端开发专业服务编码实现问题拆解技术原理
考察说明
考察 LRU 缓存机制的掌握及哈希表与双向链表结合的设计能力
回答思路
- 说明使用哈希表实现 O(1) 查找,双向链表维护访问顺序
- 覆盖 get 命中时更新节点到头部,未命中返回 -1
- 覆盖 put 时已存在则更新值并移到头部,新键超过容量则淘汰尾部
- 边界处理:容量为 0 或 1,重复操作同一键
- 正确性:链表指针更新与节点删除不遗漏
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。