字节 提前批 游戏客户端开发 面经

7.12 晚上八点开始面,面了两轮到九点四十,第二轮感觉答的不是特别好,希望能过
连续两面都被问到了垃圾回收,所以C++的垃圾回收是什么,我就只知道手动管理(free/delete)和智能指针了

7.16 更新三面,没有写代码环节,感觉有点悬,希望有好消息

7.21 挂了,收到了别的hr打来的电话说要捞我,应该就是挂了吧,55555

一面 1h
一面问的东西真的特别多,基本上面试八股文全部过了一遍(数据结构、操作系统、网络),记不起来全部了
1.自我介绍
2.内存分配
3.随便说一种常用的数据结构的特点(选的数组),联系存放的内存有什么好处?操作系统层面有什么好处?如何提高cache命中率?
4.哈希表,哈希函数,哈希冲突
5.说一下网络的部分?TCP三次握手,为什么是可靠的,几个信号的作用,seq和ack的作用
6.C++11的新特性?
7.内存管理,智能指针,垃圾回收??
8.进程线程,通信方式,进程线程安全
9.10个台阶,每次一阶或者两阶,有多少种走法,这是斐波那契数列吗(答了动态规划的方法),这是自顶向下还是自底向上,如果用自顶向下怎么算
10.右值引用了解吗,C++11的新特性?
11.设计模式了解多少(基本不了解),设计模式的作用是什么
12.做题,字符串数组两个字符串的最小距离(easy)

二面 40min
1.自我介绍
2.内存管理,static作用,在什么位置,有什么好处(没答上来),堆和栈为什么不能合并?
3.完全二叉树是什么,有什么作用(没答上来)
4.如何存储一个图?图的遍历算法(广度深度)(好久没接触过图了真的记不清了)
5.虚函数,实现机制
6.指针和引用的区别,一般什么情况下分别使用?
7.如果进行内存管理,了解有垃圾回收机制的语言吗?
8.做题,数组中和最大的连续子数组(mid)
9.提问环节

三面 50min
1.C++里STL常用的结构和使用场景(其实还是数组和链表)
2.一个地图,有很多玩家和怪物,如果以一个圆为范围扣血,怎么快速找到需要扣血的玩家(想了很久,想到了哈希表),如何实现
3.如果用哈希表来进行存储,怎么实现对应的区域的快速增删,链表该怎么实现,数组该怎么实现
4.迭代器什么时候会失效
5.问了一下项目,还比较深入:QT怎么管理控件,如何保证客户端缩放大小时,里面的元素大小正常;QT的信号与槽机制怎么实现的,C++内部的机制是什么,用QT传输消息的时候消息的格式是什么
6.一个磁盘,怎么处理可能出现的零碎空间?读文件的时候会用到fseek,怎么实现快速的移动指针到文件头/末尾
7.你玩过什么游戏,你觉得QQ飞车里面的技术难点是什么
8.反问环节
#字节跳动##游戏工程师##校招##面经#
全部评论
两个字符串数组两个字符的最小距离是什么意思啊?
点赞
送花
回复
分享
发布于 2020-07-14 21:35
楼主base哪里的游戏客户端?
点赞
送花
回复
分享
发布于 2020-07-17 23:57
网易互娱
校招火热招聘中
官网直投
请问是北京哪个游戏部门呢?ohayoo吗
点赞
送花
回复
分享
发布于 2020-08-16 05:18
那几个算法题很简单啊
点赞
送花
回复
分享
发布于 2020-11-22 12:54

相关推荐

#暑期实习##招商银行#java:1. 首先问了一下项目 (黑马的外卖)2. 多线程(线程池怎么工作的,讲了为什么需要线程池,以及各个参数的作用)3. 你提到Excutor可能因为线程数过多或者等待队列太长而出现OOM,OOM发生在JVM的哪一块内存空间? (回答:堆),追问具体在堆的哪一块区域满了才会报OOM (回答:老年区)4. 项目中SpringBoot的事务是怎么实现的(回答:启动类Enable事务然后在方法上加@Transction注解)5. SpringBoot的事务什么情况下会失效 (回答:1. 方法不是public的时候, 2. 异常必须要catch )mysql:1. 了解索引吗,说一下对索引的理解2. 什么情况下索引会失效或者说效果不好 3. mysql事务隔离级别 (说了一下四种分别是什么,分别有什么问题,怎么实现的)4. 一般推荐使用哪一种 (说使用默认的可重复读)redis:1. redis主从和集群的理解2. redis的数据类型有哪些3. 你提到了有序集合zset,那请说一下zset的底层是什么数据结构(说这个我不太清楚,说了一下推测应该和redis的索引是一样的,是跳表)4. redis主从和集群可以保证数据一致性吗 (回答不能,通过日志同步,存在脑裂等问题)5. 项目中哪一块用到了redis,mysql和redis在项目中怎么确保数据一致性的 (回答先更新数据库然后删除缓存,拓展了一下延迟双删)SpringCloud:1. 了解SpringCloud吗,说一下他和SpringBoot的区别 (直接道歉,回答springcloud还不太了解,需要后续进一步学习,然后说我理解springclod就是可以是业务更加精细化,分模块实现,而springboot更加整体 (瞎说的))最后问了一下觉得自己还需要补充哪些知识:说了一下微服务和设计模式最后:面试官说感觉基础还是挺牢靠的,但是做的项目是一个简单的单体项目,所以体会不到分布式的一些场景,导致对这一块理解不深刻,建议我找相关项目跟着做一下。反问:技术方面感谢刚刚给的建议,然后问了一下有几面,说三面,两轮技术和一轮hr,二面和hr面可能合成一面,一两周左右通知 (现在互联网找个实习都要三面了)。
点赞 评论 收藏
转发
6 50 评论
分享
牛客网
牛客企业服务