网易互娱初级游戏开发一面 面经
写个面经,回忆在面试过程中遇到的问题。 C++
时长:90min
先开始面试官给了一道题木,就离开了,半个小时写。
题目存在异议,后面我也跟面试官说了,写了两个版本的,都比较简单。
版本1:判断一个二叉树的左右子树是否相等。
版本2:判断一个二叉树是否是另外一个二叉树的子树。
时间半小时,比价充足,最后写了实例调试了。
面试中的问题:
- 说下刚才程序的思路。
- 写一个单例类
- 问变量在程序中的存储位置
- 问了多态是什么,怎么实现的,虚函数是什么,虚函数的机制,虚函数表等,问得比较深。
- 问了操作系统的内存模型。
- 寻址空间大小。如果new 了4Gb的数组,但是内存只有2Gb,程序可以运行吗?栈空间的调用,函数调用方在函数调用时,保存了什么? 面试官的问题问得很不好回答啊。
- 哈希。如何实现哈希映射,如何解决哈希冲突。线性探测实现的哈希表,如何删除一个键值对。
- 洗牌算法,本来想让写代码的,后面该为说 思路了。
- TCP和UDP的区别。TCP如何实现可靠传输的。UDP要实现可靠传输,需要做些什么,拥有什么实现TCP可靠传输的技术。
- 智力题。Leetcode上的博弈问题,拿石头。
- 智力题。50个红球,50个白球,随意放进两个箱子,再随机拿出一个箱子,从这个箱子中取出一个球,问如何放使拿到红球的概率最大。
- 问 玩不玩游戏。
1. 我的基础怎么样。 面试官:感觉还行。
2. 如果面试通过,间隔多久会收到二面通知。5-7个工作日。