25届双非本春招基本结束,发点面经
👜面试岗位:游戏客户端开发
第一家:奥术游戏,一面挂
1、数组和链表的区别
2、数组下标随机访问的原理。
3、链表中间增删O(1)的原理。
4、实现三消算法中生成必定可以全消的内容;
5、实现俄罗斯方块
6、你对游戏和代码的优先级是如何的?
7、你有什么代码洁癖吗?
8、在游戏行业做开发,很多时候你会发现,你做的根本就是个垃圾,如果不是对代码有兴趣的话,你会很难做下去。
第二家:万游网络,一面挂
先做个自我介绍吧。
你从什么时候接触到unity的?
先来个算法题吧,写一下翻转二叉树,方便共享屏幕吗?
讲一下过程。
细说一下,递归到什么程度。
那这种是深度优先还是广度优先。
那来一遍广度优先的。不用写了,口头描述下就行。
那这种的遍历顺序是什么样的。
这里一段是关于笔试题的提问。我就不写了。
vector的底层原理
数组删除的时间复杂度是多少
问点C++的知识吧。你刚刚也提到map和set是吧,他为啥查找是nlogn。
说一下红黑树的特点。
怎么判断二叉搜索树是否符合
讲一下c++内存
说一下栈内存和堆内存区别
说一下虚函数和用处。
析构函数只有delete时候调用吗
讲一下指针和引用的区别。
引用声明后可以更改吗?
你平时有玩什么游戏吗?
那你玩足球类游戏,或者其他体育类游戏吗?
第三家:成都维塔士,笔试挂
笔试全英文题目,但是作答可以用中文。
第四家:柠檬微趣,三面挂
一面:
自我介绍一下
你有什么项目经历吗?(这里答:就是简历上面写的那两个,我跟着课程学的。)
跟着教程学的是吧,那介绍一下吧。
那你说下这个架构怎么设计的,就是有哪些类?
那你说一下这个状态怎么切换的?
说一下EntityState这个类。(补充:我的这个项目是一个基于FSM做的,主要就在架构这里做文章)。
说一下这个Animation和Animator的区别?
说一下面向对象的特点。
多态怎么实现的。
那还有个静态多态你知道吗?
编译器怎么知道该执行哪个呢?
说一下这个vector的扩容机制。
说一下这个push_back和emplace_back的区别。
说一下这个map和unordered_map的区别。
用过erase吗?讲一下用erase删除vector全部数据。
讲一下这个虚函数表。
子类跟基类是一个表吗?
现在有一个基类,是空类,有个虚函数,他派生一个子类,有个int32数据。问这个子类实例化一个对象,占用多大。
子类new出来的对象,有虚函数表吗?
知道memset吗?你认为可以用这个去初始化一个对象吗?
知道memcpy的兄弟memmove吗?说下区别。
memove他是怎么做到可以在有重叠区域复制的。或者是说让你来设计,你怎么完成。
讲一下快排,口述就行。
快排稳定吗?
给你一个中序遍历和前序遍历的结果,让你去重构二叉树。二叉树的值都不相同。
再说一下,100的阶乘有多少个0。
你开一下编译器,把一个矩阵,方阵吧,给你简单点的,顺时针旋转90°。
二面:
链表交叉的形状有哪些?
判断两个链表是否有公共节点(考虑存在环情况)。
A0-An链表重排为A0-An-A1-(An-1)......这种
钟表3:15形成的夹角
三面:
实现一下堆内存。
虚拟内存的底层实现。
栈内存为什么比堆内存快,能让堆内存比栈还快吗?
编译器是如何优化栈的。
实现一下map的迭代器。
后续:三面挂
第五家:乐易网络,二面挂
具体题目忘了,就记得俩智力题了。
一群人,戴白帽子或黑帽子,只能看到别人的帽子不能看到自己的帽子,上帝来问谁带了黑帽子谁举手,问到第四次才有人举手,问几个人带黑帽子。
四对夫妻互相握手,夫妻之间不能握手,两人之间最多握一次。李先生问了一圈,其他七个人握手次数都不一样,问李先生握了几次。
手撕代码是合并k个有序数组。
第六家:多益
一面:
正常技术面。
c++八股,虚函数,stl这些
手撕是回溯实现集合的子集。
HR面:
*******************
******************(自己体会吧,懂的都懂)
第六家:乐信圣文,已OM
一面:
CPP和算法部分:
const的用法和作用,比如const int* ptr和int* const ptr区别。
比如说我一个类里面的成员函数的参数声明为const呢?
那比如我类里面一个成员不是const呢?能修改吗?
你笔试里面的那个动态循环队列还记得吗?说一下这个实现的要点。
笔试里面还有个扑克牌的题还记得吗?你是存到vector里面,然后对他整体排序得到答案的对吧,你这个时间复杂度多少?
你了解快排吗?说一下。
快排什么时候效率低下?
这题有O(n)的做法,你思考下。(用哈希表映射)
哈希冲突怎么解决。
哈希表有个get方法对吧,如果哈希冲突了,他是怎么实现的,就比如你这个链地址法。
野指针你知道吗?
数组声明的时候为什么要初始化?
cpp会产生内存碎片,如果让你设计分配内存的方法,你如何去避免?
堆排序了解吗?说一下。
堆排序都有哪些应用场景。
TopK问题是吧。具体点的,假如排行榜里面,几百万人你去挑出前K,你怎么实现。时间复杂度多少。
项目部分:
你这个第一个,这个状态机,你觉得有什么要点。
讲一下你这个存储。
如果我要做一个渐变的UI,一会变暗,一会变亮,怎么做。
gameObject你怎么理解。
gameObject上都会有Transform组件知道吗?
知道RectTransform吗?
平时喜欢玩游戏吗?
如果让你设计一个moba,你会考虑哪些方面?
二面:
纯聊天,中间穿插着问了一下渲染管道和空间划分
后续:HR通过,目前已OM
还有好几家没记录也实在回忆不起来题目了。
目前还在推进中的公司:
米、EA、吉比特(过初筛,等笔试)
星辉(笔试完,等结果)
游卡(一面过,等复试)
祝大家都能收到心仪offer
#软件开发笔面经##双非本科的出路是什么?#