【字节跳动】Go岗-后端高频面试题

一面

  1. 介绍下go的chan,chan可以做什么
  2. 你们的项目如何实现限流器,请用chan实现一种限流器,也可以不用chan实现
  3. 线程进程协程区别
  4. go协程好处
  5. gmp模型
  6. 算法题一个数字比如452484515124845157515,可以去除n个数(比如1234去掉3个数 最大值就是4),求最大值
  7. 智力题 两个人射击,每个人射中的概率都是二分之一,n轮后求第二个人射中的概率

二面

  1. 说说dockerfile?(因为我简历写了docker)
  2. mysql的常见引擎区别,mvcc机制是干嘛的
  3. 按照场景写几个常用sql语句,比如去重复
  4. mysql索引失效场景

三面

  1. 项目介绍
  2. redis各种数据结构可以做什么
  3. redis的持久化方式,区别?持久化过程时如何保证不会出现新的写覆盖数据?
  4. redis主从复制?
  5. 系统设计:如何实现排行榜?我的回答提到了分布式zset然后汇总,面试官要求实现这个算法

四面

  1. 项目介绍
  2. 有没有读过redis源码
  3. 缓存该怎么使用?如何保证一致性?
  4. 并发场景下设计并实现一个hashmap,(隐含要求扩容不阻塞)
  5. 算法题:会议有时间段,有很多会议,求最少需要多少会议室?

总结

三面体验很差, 先是面试官迟到,后来面试官说中途离开10分钟,结果离开了一小时还没回来,然后我找到hr,发现他去开会去了,hr说这次面试结束。 第一次遇见这样面试的。三面后是hr面,感觉hr很傲慢,可能是我要的有点多,又加了一面技术面四面。

发表评论

后才能评论