面试真题

Go · 简单 · 小米

map 基本原理

简单 Go 🎤 小米
参考答案
结论:Go map是基于哈希表的引用类型,提供平均O(1)读写。核心要点:1.底层为哈希表,key经哈希函数映射到桶(bucket);2.冲突解决用桶内8槽+溢出桶链;3.扩容采用渐进式rehash,避免停顿;4.key类型需可比较,不支持slice/map/func。原理:map变量是指向hmap的指针,hmap含buckets数组、B(桶数对数)等;哈希低B位定位桶,高8位存tophash加速比对;负载因子>6.5或溢出桶多时扩容,新旧桶并存,访问时迁移。
题目整理自公开面经,答案由校招宝自研生成,仅供参考