c++后端开发工程师
c++后台开发 春招 汽车
1. 自我介绍
2. 看你有点紧张,先做道题吧(春招第一个面试,很紧张)
输出top k个数 要求:空间复杂度为O(1),时间复杂度为O(nlogn)
3. 介绍一个项目(因为我介绍的太过于详细,所以问了几个他没听懂的点之后,就没再提问)
4. 说说GO中协程和线程的区别。(用户轻量级线程)
5. 一个很大的数据文件,但你的内存有限,该怎么加载?(虚拟内存)
6. 内存中的页面满了怎么办?(页面置换)
7. 有哪些页面置换算法?(先来先、LRU、最佳....)
8. 置换出去的页面去哪了?(我只记得放进一个缓存区去了,那个区叫啥给忘了,果然学了点皮毛)
9. 设计一个固定大小的缓存,完成get、delete、set三种操作,要求时间复杂度均为O(1),只需要说清楚思路就好。(LRU,哈希表+双向链表,注意一定要摸清楚每个节点里存啥,这儿我糊涂了,提示了我才想起来)
10. 时间到了,结束,没有反问环节
11. 最后道歉说自己太紧张了,没发挥好,面试官说没事没事答得挺好的。
感受:全程五十分钟,面试感觉很不错,你在说的时候对面一直有回应,说对了也会点头也会说是的对的,鼓励你继续往下说。