一面
下午2点,35分钟
- golang内存模型
- golang并发模型
- golang gc原理 过程
- channel用途,原理
- redis数据结构,底层实现
- 跳跃表查询插入复杂度
- 进程,线程,协程
- kill原理
- 除了kill -9还知道什么信号
- 父进程调用fork后,不调用waitpid会怎怎样
- 僵尸进程
- 线程间同步方式
- 锁有哪些类型
- 口述topk
- 建堆过程
总体来说1面很常规,感觉没啥难度,很快就约2面了
- 手撕。类似leetcode8。不过输入不是一个而是很多逗号分割的字符串,还要自己考虑各种异常情况。
- 设计一个排行榜的数据结构,说思路
- 手撕,类似ip前缀树。我直接傻了,以前没写过前缀树。
- sql建表。也很迷惑,我说我已经很久没写过建表的sql了,都是图形化工具建表的。然后硬着头皮写
- 实习项目
- 玩游戏吗,玩我们公司的游戏嘛
- 反问。我问他游戏项目是否存在客户端相比服务端更加核心的现象,还有游戏后端相比web后端的不同点和难点。大佬真的很nice,虽然已经判断要挂我了,还是很认真的给我讲解了大概10分钟