首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
来个好消息
门头沟学院 后端工程师
关注
已关注
取消关注
@Epochsss:
Go常见八股整理与解析
******************Go的八股不多,所以咱们偏向于求精不求多,尽量讲出深度和广度。广度,代表了你的知识面、深度代表了你对该点有深入的理解。广度,通常是通过横向对比体现的;深度,通常是细节去体现的。后面会具体举例说明如何表达出深度和广度。面试准备我个人的简历上面,写的是熟悉Golang: Slice、Map、GPM调度器、垃圾回收机制等面试官基本的提问方式是,“我看你简历上有写xx,你给我介绍一下xx吧”所以,你就需要准备好说辞,想好怎么涉及广度又涉及深度地表达。首先大家要想好以怎么样子一个结构去表达,我个人的一般方式是背景:这个东西是干啥的,有什么作用核心原理:代表你的理解细节:细节是某些数据的设置,或者特定场景的优化。细节,就表达你的深度,同时也能够让面试官相信有你真实理解,而不只是背八股。总结拔高:这里通过就需要你对某些点有些深入的理解或者横向对比,这个是用来加分的,这也是和别人拉开差距的地方,表达你有不一样的理解。Golang中的map的例子我以golang中的map为例子,大家理解一下,注意,面试的时候尽量用口语话的表达,不然就像在背八股。口语中有“就是”、“然后”这样的衔接词。map它的底层是哈希表,那哈希表通常我们需要考虑3个方面,哈希函数、冲突处理、扩容方式。哈希函数这个没啥好说的,是尽量保证哈希结果稀疏就好。冲突处理这块,golang中的map采用的是拉链法,不过这有个细节就是,这个map的链表的节点是一个桶,一个桶你可以理解为一个8个元素的数组,这样做的好处就是,减少了频繁分配链表节点时的开销,我理解的话,这是一种时间和空间上的折中。扩容方式这块,是采用渐进式扩容,渐进式扩容就可以把时间均摊到每次请求上,不会有那种常规扩容的卡顿的情况。然后前面提到桶,golang也提出等量扩容的方式,主要是在稀疏的情况下做,减少检索和内存的开销。单个点拉出来看背景:哈希表由于是人尽皆知的,所以可以不用介绍。核心原理:按照3个方面,哈希函数、冲突处理、扩容方式,去介绍。多个细节:拉链法、链表节点是桶、等量扩容总结拔高关于桶这点,“减少了频繁分配链表节点时的开销,这是一种时间和空间上的折中。”等量扩容,“主要是在稀疏的情况下做,减少检索和内存的开销。”这样,是不是让面试官感觉你对map了解很透彻的同时,能做横线对比,体现了知识广的优势。Golang的GPM调度器再比如协程调度器GPM,可以从这么几个角度,按顺序吟唱背景:为什么要有GPM调度器核心数据结构:G、P、M调度逻辑:正常情况下、挂起和恢复情况下、负载均衡情况、抢占式调度横向对比:调度器可以和Linux的线程调度器CFS对比来看,有哪些异同,比如都有全局对立和本地队列、都有负载均衡机制、差异是golang的调度实现更简单如下图大家把这些内容填进去,按顺序说,就是流畅的八股表达Go其他八股其他的比如slicesync.Map垃圾回收channelnew和make的区别其他那种简单看看的八股我就不额外写了,大家看看就能会。上面这些我把图贴出来给大家参考。GPMSlicesync.Map垃圾回收mapchannel完整文件如果需要完整文件,由于牛客没法放xmind文件,也没法放百度网盘链接【恼】,可以看上面文章来源获取,后续也会放其他的八股,Redis、MySQL和分布式、微服务等等,欢迎关注我的牛客和公众号!
点赞 52
评论 3
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
12-17 15:11
浙江大学 Java
@Component 和 @Bean 的区别是什么?
图解Spring-牛客面...
点赞
评论
收藏
分享
12-18 16:36
浙江大学 Java
C++ 中四种类型转换的使用场景?
图解C++基础-牛客面经...
点赞
评论
收藏
分享
10-27 11:16
已编辑
湖南大学 安卓
秋招互联网大厂梯队排位
top1(清北):阿里巴巴,腾讯,美团,抖音。ATMD奢华团队。top2(华五人):pdd,百度,jd,蚂蚁,滴滴,快手,网易,携程,腾讯音乐。top3(老牌C9):b站,小红书,微博,爱奇艺。top4(中上985):boss直聘,58同城,得物,去哪儿。top5(中等985):买菜,哈罗,知乎,当当网top6(末流985):虎扑,虎牙,陌陌,脉脉,猎聘。
牛客85586392...:
就团子这base 拉完了还top
点赞
评论
收藏
分享
12-15 15:12
中南大学 Java
每天一套面试题-Day40-八股高频(21)
题目来自牛客p9 每天一套面试题专栏,每天一起打卡 98.MySQL 的存储引擎有哪些?它们之间有什么区别?默认使用哪个? blog 99.大表(千万级)查询 / 维护该怎么办? my blog 100.多线程冲突了怎么办? 牛客的图片不错 我的博客中关于java中的锁
每日一套面试真题
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
读研还是本科就业?
4831
2
...
2025年度总结-成长
4078
3
...
2025这一年真是辛苦了
3591
4
...
双非鼠鼠0实习0竞赛闯秋招的一年,重头再来我不会选这条路了
2560
5
...
突然被同事表白了
2392
6
...
数字马力
2203
7
...
双非硕后端秋招情况(准备春招版)
2067
8
...
腾讯云智timeline
2009
9
...
哈啰出行 前端 实习面经
1837
10
...
用了几年 AI 辅助编程,发现自己逐渐废了,我该怎么办
1756
创作者周榜
更多
正在热议
更多
#
什么是优秀的实习经历
#
7992次浏览
205人参与
#
担心入职之后被发现很菜怎么办
#
266044次浏览
1131人参与
#
被上班搭子“传染”了哪些习惯
#
5249次浏览
97人参与
#
投格力的你,拿到offer了吗?
#
152217次浏览
813人参与
#
工作后,你落下了哪些病根
#
12890次浏览
182人参与
#
作业帮求职进展汇总
#
82623次浏览
543人参与
#
京东美团大战,你怎么看?
#
157915次浏览
859人参与
#
实习简历求拷打
#
10850次浏览
142人参与
#
如果今天是你的last day,你会怎么度过?
#
58865次浏览
324人参与
#
秋招被挂春招仍然能投的公司
#
6410次浏览
94人参与
#
mt对你说过最有启发的一句话
#
34630次浏览
417人参与
#
为了找工作你花了哪些钱?
#
74774次浏览
359人参与
#
机械人晒出你的简历
#
146397次浏览
874人参与
#
嵌入式岗知多少
#
62955次浏览
555人参与
#
摸鱼被leader发现了怎么办
#
100374次浏览
640人参与
#
考研失败就一定是坏事吗?
#
200619次浏览
1369人参与
#
秋招特别不鸣谢
#
15273次浏览
175人参与
#
2023毕业生求职有问必答
#
218561次浏览
1662人参与
#
选实习,你更看重哪方面?
#
13552次浏览
214人参与
#
牛客十周岁生日快乐
#
197768次浏览
1895人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务