面试真题

技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
641 道
覆盖企业
49 家
技术方向
16 个
当前筛选
26 道

按技术方向点选即筛,再点「全部」还原

按难度

按企业49 家企业的真题,点选查看该公司全部题目

分类:Go · 难度:简单26 道 · 点击进入查看参考答案

简单Go
map 基本原理
结论:Go map是基于哈希表的引用类型,提供平均O(1)读写。核心要点:1.底层为哈希表,key经哈希函数映射到桶(bucket);2.冲突解决用桶内8槽+溢出桶链;3.扩容采用渐进式rehash,避免停顿;4.key…
🎤 小米
简单Go
map、slice未初始化操作会怎样,发生panic应该怎么办
结论:未初始化map为nil,直接赋值panic;未初始化slice为nil,append安全但索引访问panic。要点:1.nil map写入报'assignment to entry in nil map',须用ma…
🎤 闪送
简单Go
map与切片哪个是线程安全的
结论:Go语言的map和slice均非线程安全,并发读写会导致panic或数据错乱。原理:map底层无锁,并发写触发runtime抛出'concurrent map writes'崩溃;slice底层是结构体含指针/长度…
🎤 百度
简单Go
String和byte切片的区别
结论:Go中string是不可变字节序列,byte切片是可变字节数组。核心区别:1.可变性:string底层结构含指针和长度,内容只读,修改编译报错;[]byte可修改元素如b[0]='x';2.内存:string赋值或…
🎤 金山
简单Go
关闭的channel数据的发送与接收
结论:向已关闭channel发送数据会引发panic;从已关闭channel接收,若缓冲区有数据则先读出,随后返回零值且ok=false;重复关闭同样panic。原理:channel关闭后运行时禁止发送,接收通过hcha…
🎤 京东
简单Go
Mutex是乐观锁还是悲观锁,乐观锁和悲观锁的区别
结论:Mutex 是悲观锁。悲观锁与乐观锁核心区别在冲突假设与处理方式。悲观锁认为并发冲突频繁,操作前先加锁独占资源,如 Mutex、数据库行锁,保证安全但开销大、易阻塞;乐观锁认为冲突少,不加锁,通过版本号或 CAS …
🎤 深信服
‹ 上一页第 2 / 2 页
题目整理自公开面经,答案由校招宝自研生成,仅供参考