网易互娱游戏研发面经+时间线
3.27 一面(60min)
1.自我介绍
C++
2.C++结构体的内存对齐题两道,问占多少字节的存储空间,如果要优化它的内存空间应该怎么优化
3.内存对齐的好处是什么
4.int func() const;是什么?
5.map的底层数据结构?
6.讲讲红黑树?红黑树怎么进行插入、调整?删除时最多旋转红黑树几次
7.了解AVL树吗?AVL树和红黑树的区别是什么
8.快排和归并排序的过程?时间复杂度各是多少?最坏情况下会退化至多少?
9.快排什么时候会退化至最坏情况?有什么方法能够避免这个最坏情况
10.算法题:合并两个有序数组(就是写归并排序最后那个merge的过程)
11.unordered_map的底层数据结构是什么?
12.哈希碰撞有几种解决方式?各自有什么优缺点?
13.普通哈希扩容时,如果哈希中元素很多那么扩容效率会很低,如何解决?(这里我答了渐进式哈希)
14.渐进式哈希扩容的过程中,插入、删除、查找的过程是什么?(面试官说目前渐进式哈希扩容的解决方案不多,让我按自己的想法说就行)
15.哈希冲突的链表法和开放定址法怎么进行删除操作
16.C++继承的内存布局
17.C++的菱形继承
18.C++虚继承时继承的内存布局和普通继承相比有什么变化(没答出来)
19.C++的多态怎么实现的
20.讲一讲C++的虚函数
21.构造函数能是虚函数吗?析构函数能是虚函数吗?
22.讲讲share_ptr
23.怎么避免share_ptr产生的循环引用问题
计算机网络
24.TCP和UDP的区别
25.为什么TCP握手需要是三次?挥手是四次?
26.为什么会有Time_wait阶段
27.在短连接时,服务端发生处于Time_wait阶段的连接太多,无法accept()的情况,你会怎么解决
28.UDP和TCP能共用同一个端口吗
一面之后过一周约二面
--------------------------------------------
4.8 二面(60min)
1.自我介绍
2.自我介绍讲了我觉得我比较细心负责,面试官让我举例说明(然后跟他讲了我做项目的事情;后面又问了我很多项目开发过程中团队合作方面的问题)
项目拷打
3.你了解的比较多的技术栈是什么
4.讲一讲项目中用到的有限状态机的代码框架,比如需要有什么基类、要实现什么接口等等
5.你觉得你写的有限状态机跟普通的有限状态机相比有什么优点
6.性能优化方面,使用对象池为什么能起到性能优化的作用
7.你的对象池有限制缓存对象个数吗?(我说没有,但是可以对对象池中的对象设置过期时间)
8.讲讲对象池设置过期时间的逻辑
场景题
9.那如果对象池要限制缓存对象个数,应该怎么做?(我回答说LRU)
10.LRU一般用什么数据结构实现?(双向链表和哈希)
11.如果要在你这个对象池中划分子对象池,并用LRU控制子对象池的大小,应该怎么设计?(回答父对象池的键值对中存子对象池,子对象池中再存以每个缓存对象为结点的LRU双向链表)
12.有没有了解过优先级队列?优先级队列是用什么数据结构实现的?(最开始说也可以用双向链表,后面反应过来说用堆)
13.用双向链表怎么实现优先级队列的插入?用堆怎么实现插入?
14.如果优先级队列中的每个元素有一个唯一id,在往优先级队列中插入元素时,如果该id已经存在在优先队列中,就更新它的信息,否则就新增结点;这种情况下应该怎么改进?(用哈希表记录id和对应元素,插入时根据哈希找到对应结点并更新)
15.如果是用堆实现优先级队列,在更新堆时,哈希表需要做什么操作?(我说如果堆上滤/下滤时是直接交换两个结点,此时哈希不用做操作;如果只是把需要交换的两个结点的值进行交换,就要对应修改哈希中键值对的值指向的结点)
16.堆怎么进行插入、删除操作?时间复杂度是多少?
C++
17.讲一下你觉得C++和Java/C Sharp是虚拟机语言,C++不是)
18.虚拟机语言和C++这种语言的区别是什么(不太了解)
19.C++编译后生成的文件是什么?能直接运行吗(汇编文件,要运行还要进行链接)
20.虚拟机语言生成的文件是什么?能直接运行吗(这里感觉还在引导我,但我真没了解过TT)
21.讲讲C++的预编译阶段会做什么事情
22.C++如果在两个头文件中声明了同样名字的一个类,并在一个cpp文件中同时引用了这两个头文件,会报错吗?(我说类不太了解,但如果是全局变量/函数的话会报错,面试官让我回去之后再查一下)
23.成员函数用const关键字修饰时会发生什么?在常成员函数中能调用非常成员函数吗
24.如果就是要在常成员函数中调用非常成员函数,应该怎么做?(说了很多猜想都面试官都说再想想,然后也是很nice的在下面的问题中引导了)
25.你知道C++的强制类型转换吗?比如const_cast?
26.那你了解this指针吗?常成员函数的this指针是什么样的?(const_cast和this指针一结合就想到,可以用const_cast将常成员函数传入的this指针变成非const的,然后应该就可以调用非常成员函数了)
其它
27.开发中会使用AI工具吗?一般使用什么样的AI工具?会在什么场景下使用?(我说会用,会让AI帮我review代码,也会跟AI学一些好的代码优化方法)
反问
1.一般有几轮面试?
2.如果能通过,入职之后会做什么工作?
无算法
--------------------------------------------
二面之后第二天约的hr面
4.10 hr面
4.11 oc(不过到4.24为止看官网上的流程都还在hr面)
--------------------------------------------
4.25更新 今天官网流程变录用审核了


4.25第二次更新 下午邮箱收到offer啦
#暑期实习 ##游戏研发##游戏客户端##面经##网易互娱##暑期实习校招#
1.自我介绍
C++
2.C++结构体的内存对齐题两道,问占多少字节的存储空间,如果要优化它的内存空间应该怎么优化
3.内存对齐的好处是什么
4.int func() const;是什么?
5.map的底层数据结构?
6.讲讲红黑树?红黑树怎么进行插入、调整?删除时最多旋转红黑树几次
7.了解AVL树吗?AVL树和红黑树的区别是什么
8.快排和归并排序的过程?时间复杂度各是多少?最坏情况下会退化至多少?
9.快排什么时候会退化至最坏情况?有什么方法能够避免这个最坏情况
10.算法题:合并两个有序数组(就是写归并排序最后那个merge的过程)
11.unordered_map的底层数据结构是什么?
12.哈希碰撞有几种解决方式?各自有什么优缺点?
13.普通哈希扩容时,如果哈希中元素很多那么扩容效率会很低,如何解决?(这里我答了渐进式哈希)
14.渐进式哈希扩容的过程中,插入、删除、查找的过程是什么?(面试官说目前渐进式哈希扩容的解决方案不多,让我按自己的想法说就行)
15.哈希冲突的链表法和开放定址法怎么进行删除操作
16.C++继承的内存布局
17.C++的菱形继承
18.C++虚继承时继承的内存布局和普通继承相比有什么变化(没答出来)
19.C++的多态怎么实现的
20.讲一讲C++的虚函数
21.构造函数能是虚函数吗?析构函数能是虚函数吗?
22.讲讲share_ptr
23.怎么避免share_ptr产生的循环引用问题
计算机网络
24.TCP和UDP的区别
25.为什么TCP握手需要是三次?挥手是四次?
26.为什么会有Time_wait阶段
27.在短连接时,服务端发生处于Time_wait阶段的连接太多,无法accept()的情况,你会怎么解决
28.UDP和TCP能共用同一个端口吗
一面之后过一周约二面
--------------------------------------------
4.8 二面(60min)
1.自我介绍
2.自我介绍讲了我觉得我比较细心负责,面试官让我举例说明(然后跟他讲了我做项目的事情;后面又问了我很多项目开发过程中团队合作方面的问题)
项目拷打
3.你了解的比较多的技术栈是什么
4.讲一讲项目中用到的有限状态机的代码框架,比如需要有什么基类、要实现什么接口等等
5.你觉得你写的有限状态机跟普通的有限状态机相比有什么优点
6.性能优化方面,使用对象池为什么能起到性能优化的作用
7.你的对象池有限制缓存对象个数吗?(我说没有,但是可以对对象池中的对象设置过期时间)
8.讲讲对象池设置过期时间的逻辑
场景题
9.那如果对象池要限制缓存对象个数,应该怎么做?(我回答说LRU)
10.LRU一般用什么数据结构实现?(双向链表和哈希)
11.如果要在你这个对象池中划分子对象池,并用LRU控制子对象池的大小,应该怎么设计?(回答父对象池的键值对中存子对象池,子对象池中再存以每个缓存对象为结点的LRU双向链表)
12.有没有了解过优先级队列?优先级队列是用什么数据结构实现的?(最开始说也可以用双向链表,后面反应过来说用堆)
13.用双向链表怎么实现优先级队列的插入?用堆怎么实现插入?
14.如果优先级队列中的每个元素有一个唯一id,在往优先级队列中插入元素时,如果该id已经存在在优先队列中,就更新它的信息,否则就新增结点;这种情况下应该怎么改进?(用哈希表记录id和对应元素,插入时根据哈希找到对应结点并更新)
15.如果是用堆实现优先级队列,在更新堆时,哈希表需要做什么操作?(我说如果堆上滤/下滤时是直接交换两个结点,此时哈希不用做操作;如果只是把需要交换的两个结点的值进行交换,就要对应修改哈希中键值对的值指向的结点)
16.堆怎么进行插入、删除操作?时间复杂度是多少?
C++
17.讲一下你觉得C++和Java/C Sharp是虚拟机语言,C++不是)
18.虚拟机语言和C++这种语言的区别是什么(不太了解)
19.C++编译后生成的文件是什么?能直接运行吗(汇编文件,要运行还要进行链接)
20.虚拟机语言生成的文件是什么?能直接运行吗(这里感觉还在引导我,但我真没了解过TT)
21.讲讲C++的预编译阶段会做什么事情
22.C++如果在两个头文件中声明了同样名字的一个类,并在一个cpp文件中同时引用了这两个头文件,会报错吗?(我说类不太了解,但如果是全局变量/函数的话会报错,面试官让我回去之后再查一下)
23.成员函数用const关键字修饰时会发生什么?在常成员函数中能调用非常成员函数吗
24.如果就是要在常成员函数中调用非常成员函数,应该怎么做?(说了很多猜想都面试官都说再想想,然后也是很nice的在下面的问题中引导了)
25.你知道C++的强制类型转换吗?比如const_cast?
26.那你了解this指针吗?常成员函数的this指针是什么样的?(const_cast和this指针一结合就想到,可以用const_cast将常成员函数传入的this指针变成非const的,然后应该就可以调用非常成员函数了)
其它
27.开发中会使用AI工具吗?一般使用什么样的AI工具?会在什么场景下使用?(我说会用,会让AI帮我review代码,也会跟AI学一些好的代码优化方法)
反问
1.一般有几轮面试?
2.如果能通过,入职之后会做什么工作?
无算法
--------------------------------------------
二面之后第二天约的hr面
4.10 hr面
4.11 oc(不过到4.24为止看官网上的流程都还在hr面)
--------------------------------------------
4.25更新 今天官网流程变录用审核了
4.25第二次更新 下午邮箱收到offer啦
#暑期实习 ##游戏研发##游戏客户端##面经##网易互娱##暑期实习校招#
全部评论
佬,决定去哪了?
接好运
佬今天状态有变录用审核吗
佬是打电话问的吗,oc了
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享