(已OC)腾讯PCG后台开发实习 - 时间线、面经记录

本来想写面经的,但是因为太久了,大部分都忘了,只记得不会的几个点和编程题…

4.6:一面(电话面)(60min)
问了很多基础知识(计网,操作系统,数据库),基本都答出来了。一个点不会:协程相关的概念以及应用。(之前看过,忘了)

最后问了两道思维题:
一、一个数组里有1,2,…,n-1,n,但是里面缺了两个数,只有n-2个数,要求找到缺的那两个数,问最优的解法,以及尽可能多的方法。
1、建个hash table,每次把对应的数放到他的下标,for一遍hash table,下标里数为0的即是缺的数。
然后他又问我有没有更优的解法。
2、在原本数组操作,for一遍,对每个下标不等于自己的数都swap到他的位置,直到数为0即为缺的数。

二、有25匹马,5个赛道,问最多比赛多少次才能找到最好的3匹马。
想了4分钟:
先把25匹马分为5组,每组都进行一次比赛,则可以找到每组最好的前三匹马。然后把每组最好的马(5匹)再比一次,淘汰最垃圾的2匹马对应的2组马。把最好的一匹拿出来,最好的那组的第二,与其他两组的第一第二再比一次,找到第二跟第三。
所以答案为 5+1+1=7 次。说答案的时候对方没有应答,我还以为我错了,没想到对了。

4.7:二面(牛客)(60min)
分为两部分,一部分做题,一部分面试。

第一部分:(20min)
一、n*m的迷宫,有空地有障碍,问从(0,0)到(n,m)的最小步数,秒了
二、链表删除第K个节点,秒了
三、合并两个有序链表,秒了

第二部分:(40min)
因为他那边有回音,所以改成了电话面试,跟小哥聊得挺开心的,他说我迷宫那题写得跟标准答案一摸一样,连#define的东西都一样(那不是因为太简单了吗XD),然后就在那里笑,我也一起笑,问了我项目部分怎么实现的,了不了解底层原理,为什么不继续打比赛,有玩什么游戏,还有问一些基础操作系统问题,计网问题,还有用什么编程语言,不同编程语言之间的区别等。还问了了解什么设计模式,windows编程模型,线程与进程分别的应用场景等。

说实话我觉得我运气太好了,都好简单

4.12:三面(腾讯会议)(30min)
听说是技术总监面,开始前害怕的一批。

上来问我打比赛用到的知识,算法。我举例说了我出的题用到的算法(DP),他说DP,贪心这类算法工作用的很少,让我举例数据结构的,我举例了个线段树的题。然后问了我怎么debug的,我说打印日志、断点调试、gdb。他问我C++的异常是什么,怎么用。我说我没用过。。
最后让我手写两道多线程编程:生产者消费者模型、以及一个线程声场int[10],唤醒另一个线程用 i = 1 到 10 i=1到10 i=110初始化这个数组。他说不用api写伪代码也行,5分钟秒了。

4.14:HR面(腾讯会议)(30min)
选一个项目,解释背景,实现的过程,负责的部分。
在学校的成绩,以及是否满意
能跟大家分享的学习方法
课余时间都在干些什么
是哪里人,父母干什么的
是否接受去深圳,或者调剂
是否有亲戚在腾讯
是否有疾病
是否有在面试其他公司,什么公司,结果怎么样
最后说5-7天给回复(结果2天内就给回复了!感谢让我摆脱煎熬)

当天11点半HR面,12点结束,12点半看官网已经到录用评估环节,同时发了云证

4.15 下午4点半收到OC电话,结果晚上手机就坏了(指打不了电话,只能接耳机)

4.16 下午3点半发邮件offer

最后感谢腾讯baba发的人生中第一封offer XD

你可能感兴趣的:(面试)