网易游戏提前批。两轮技术面,没有HR面。面试前现场30分钟写一道无向图的连通子部数求解题。
一面:
1. C、C++区别。
2. 多态具体实现,虚函数指针指向的函数区域是连续的吗。
3. 了解OpenGL和图形学吗,还有一些听不懂的术语。
4. 怎么哈希一个字符串,如果不用地址作为key。
5. 给定M个数,如何创建哈希,有冲突怎么办,后期要扩容怎么办。
6. 如果不用map,有什么方法来仿真替代map的功能,二分法时间复杂度。
7. const在C和C++中分别有哪些作用,不用cast系列,怎么修改一个类的const成员变量。
8. 给定M个整型数,如何从中选出最大的n个数,计算时间复杂度。
9. 如何不用递归来实现快排,主要说思路,写示意代码。
10. 怎么颠倒单词的顺序,如hello world 变成world hello。
11. 进程线程区别,进程如何通信,线程如何通信。
12. 程序可以使用的最大内存是多大,4G全部可以占用吗,为什么不可以,被哪些东西保留了。
13. 如果只有1G的内存,怎么实现4G的效果。
14. map底层的数据结构,简单介绍。
15. TCP和UDP区别,UDP的优点,三次握手发生在什么时候,TCP服务器建立的过程 。
16. 单核处理器,处理多个任务,怎么同时进行,CPU的调度有哪些方式。
17. 服务器如果有很多的客户机,怎么实现高并发。
二面:
1. 介绍项目。
2. 哈希一个字符串。
3. 对Python的了解,Python内存管理垃圾回收(引用计数)。
4. C++智能指针有哪些,unique指针怎么实现独享,自己写一个shared_ptr类,实现基本的功能,引用计数的共享,有了const成员函数,是否需要非const的。
5. 玩过什么游戏,对于一个3D场景,如何实现由远及近逐渐清晰。
6. 短网址的实现,如何哈希一个字符串。
7. 一个N大小的乱序整形数组,其中数据范围是[0,M],M<N,找出其中出现次数大于1的数。
8. 一个N大小的乱序整形数组,找出其中最大的递增子序列。
...查看更多