年后的几个小面试_服务端|客户端

都是在boss上面投递的中小公司,全部挂掉了,来记录一下败犬经历。

五十一区工作室_服务端

一面

1.算法:给一个数,找到大于等于它的最小2的幂次

2.讲一下protobuf中string是怎么组织的

3.讲了一下自己网游的项目流程。

4.描述一下购买商品的流程处理的流程:

注意前端过滤

5.数据库:有两题忘记题目了,我的数据库是比较拉跨的,得好好练练。

二面

1.c++虚继承及其作用?

2.什么时候会把递归改成迭代?迭代中常用到的数据结构是?

3.讲一下什么是动态规划?能解决什么问题?

4.算法,最小圆覆盖?

5.讲一下自己的优缺点?

6.讲一下大学期间你最有成就感的事情?

总结

二面挂,非技术问题我直接老老实实的说了,这次面试之后我就好好归纳这些非技术问题。

不鸣科技_服务端

一面

1.lua中深拷贝

2.应用题1:玩家在地图中移动,地图中有很多城镇,玩家需要实时获取离他最近的城镇?

均匀网格,空间换时间,将地图按照一定的间隔进行分割,然后我们就可以用坐标来定位当前的格子

3.应用题2:

假设一把游戏中有32个玩家,每个玩家有100个小兵,那么所有玩家控制自己所有的小兵向地图中心投掷手雷,手雷爆炸会有伤害跳字,假设他们是同时投掷的,那么这段跳字的时间就会很卡,怎么优化?

对象池、分帧处理

4.算法:在有10000名玩家的排名榜中根据自己的积分找到自己的排名,现在排名榜是乱序的

5.应用题:假设现在玩家身上有光环效果,它的持续时间是10秒,现在每隔1秒会在玩家周围半径10米给小白上buff,假设buff会叠加,我们应该怎么减少数据包的数量(目前直接不优化直接发包的话一共会发10个数据包)?

只需要在特定的时间给客户端发包,告诉客户端进行表现上的处理,同时自己根据时间去预测效果的持续时间和叠加层数。如果预测失败,服务端自然会发包去修正。

也可以发增量包,去减少每一个包的数据量,减少带宽压力。

6.状态同步与帧同步的概念、区别及使用场景?

这里概念有点忘记了。。。

状态同步:服务器是权威,大部分游戏逻辑都在服务端去计算(比如角色移动,技能判断),并将计算结果(位置、血量、技能状态)同步给全部的客户端。客户端只负责表现这一块。

状态同步适用于:延迟容忍高、安全性高、需要处理大量玩家交互和复杂逻辑的游戏

帧同步:客户端仅仅向服务器发送操作的指令(如移动、攻击),服务端收到指令后转发其他客户端,各个客户端根据相同的指令序列独立计算游戏逻辑,确保结果一致。

帧同步适用于:要求低延迟和高操作响应(moba、fps),需要同步大量游戏单位的游戏(rts)

总结

一面的时候我问了一下hr我这次面试存在的问题,主要是简历上的一些关键词无法很好地表达。

面试官挺好的,就是我太菜了。

乐易_客户端

一面

1.推理题1:

李先生邀请其他三对夫妻开part,

1.夫妻之间不能握手

2.李先生问了其他7个人,握手次数都不一样

请问李先生握手多少次?

2.推理题2:

大马 :3

中马: 2小马:0.5要求全部马一共100头, 运完粮食100斤

3.推理题3:

100个人,每个人都戴帽子,场上至少有一顶黑帽子

每个人只能看见其他人的帽子

主持人问谁是黑帽子,问了四次才有人举手

4.算法题:k条链表合并

5.lua 元表,_Index, _newIndex 有啥用?

6.c++ vector 和 list区别?

甚至没有反问....

总结

推理题实在没有训练过,简直惨不忍睹,并且思考时间有点长了,下回遇到这种题目5分钟想不出来了直接让面试官切下一种题型了。

全部评论

相关推荐

03-10 20:35
已编辑
武汉大学 C++
点赞 评论 收藏
分享
评论
1
14
分享

创作者周榜

更多
牛客网
牛客企业服务