11.1 途游游戏 UE4客户端 一面40min
总结:红黑树、hash底层、UE4关键类及底层
自我介绍
问题:
- C++vector怎么实现的
- 跟list有什么区别
- map怎么实现的
- 红黑树怎么实现的
- 为什么用红黑树?有序的排列是怎么通过红黑树实现的?怎么跟map的查找性能联系到一起的为什么是logN?
- 红黑树讲的具体点,怎么查找这个树的。
- 那怎么建立这个二叉搜索树的?
- 假如我有一个好几层的红黑树,我要插入一个元素,要插入到哪里?怎么去调整红黑树?树的具体的调整是怎么个方法?
- unordered_map怎么实现的?hash表是怎么实现的?
- hash函数怎样的一个过程?冲突了怎么解决?
- 假如说hash要存好多数,那最初hash表要多大才合适?它底层是一个怎么样的调整的规则?
- 快速排序怎么实现的?
- 堆排序?怎么实现的?(这块不知道为什么面试官一直和我battle,,我分了三步说:调整堆、建堆、排序,后来感觉面试官只关注了调整堆的过程,没听到排序的过程,然后就在这一直battle,反复摩擦,我也是很无语,感觉就像进了套一样,在各种父节点子节点孙子节点中一顿battle,之前面试我一直按这种方式去回答,没有什么问题。后来又说排序的过程不涉及插入元素的过程,如果插入的过程怎么办。。)
- IK?怎么解算的?
- 材质参数集是什么?为什么要用这个东西而不是去直接去改材质的参数呢?为什么不能在C++里直接改?
- Character和Pawn有什么区别?Character类和Pawn类有什么关系?
- Character和Controller在程序上有什么关系?是怎么实现的?
反问
总体感觉很一般。估计没什么后续。评价是 八字不合吧,按照以往的面试经验来回答面试问题都没有什么事,这次面试不知道为什么就是像解释不清和听不懂一样。
有思路的牛友请求解答一波。
以上。