后端岗位面试题更新 2026-08-05
在用数组加链表实现 HashMap 时,什么时候需要将链表树化,什么时候又会退化为链表?
淘宝闪购后端开发消费品/零售风险判断技术原理方案权衡Java
考察说明
考察 HashMap 树化与退化的触发条件及设计意图
回答思路
- 准确说出树化的阈值(链表长度超过 8 且数组长度至少 64)
- 解释树化的目的是缓解极端哈希冲突下的查询退化
- 说明退化条件:扩容后节点数减少或红黑树节点小于等于 6 时退化为链表
- 能联系负载因子、扩容与哈希分布说明设计权衡
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。