腾讯PCG后台开发面经(一+二+HR面,已录用)

面试流程相当快,一二面加起来才一天,HR面到oc一天半。不愧是无情捞人PCG,我在阿里的面试开始的比tx早,结果tx的offer都收到了,阿里才刚过二面

面试过程中写的面经了,发在我的blog上,所以偷个懒直接复制粘贴一下:

一面

今天下午三点多的时候突击电话面试,第一次遇到这种突击面试,我有点紧张了,表现得不是太好。

面试

面试官先介绍了一下自己:PCG 后台开发,base 深圳,有意吗?有意的话我们现在就电话面试一会儿。

问项目

让我先讲讲自己做的开发项目。

问技术

C++

  • new 和 malloc 的区别
  • 指针和引用的区别
  • C++ 里有多态吗?怎么实现的

计网

  • TCP 和 UDP 的区别
  • TCP 连接建立过程,为什么要三次握手,而不是两次握手
  • HTTPS 了解过吗?讲讲和 HTTP 的区别
  • HTTPS 中,证书的验证是用什么样的方式

算法/数据结构

  • 讲讲快排是怎么样的一个过程
  • 快排的时间复杂度
    • 快排的最坏时间复杂度,什么情况,为什么
  • 题:32bit 的电脑上,有个文件中有 5e 个 int 型数据,求只出现过一次的数据。
    • 讲讲时间复杂度和空间复杂度

下期预告

电话打到后面,面试官说:这两天你什么时候有时间不?要做个笔试,我发腾讯会议给你。然后我说我都 OK,他就很果断地说:那今晚怎么样。我 OK 都说了我还能怎么办 hhh,那就今晚呗,然后就定了晚上七点开始。

一面 手撕部分

和上一篇的电话面试同一天的晚上七点,面试官发的腾讯会议,进去共享屏幕写代码。

题目

题目是面试官发给我的,说我可以保存一下,我直接贴过来了:

  1. long a = (long)(((int *)0)+4);a 等于多少?

  2. int (*s[10])(int) 表示的是什么?

  3. 用熟悉的语言写一个函数,把字符串里面的空格全部去掉,并返回删除的空格的个数,要求空间复杂度 O(1),函数原型:int delete_space(char *str)

  4. 编写一个函数求给定两个正整数的二进制表示中不同位数的个数。例如给定数字 8 和 9,8 的二进制表示是 1000,9 的二进制表示是 1001,则不同位数的个数为 1

  5. 编写一个函数将字符串转换为整数(即 atoi)

  6. 设计并实现一个 QQ 用户(QQ 用户 id 是一个 32 位整数)在线统计的 API,至少包含以下功能:

    用户上线登记,下线取消登记;快速判断某用户是否在线(高频调用接口);快速统计当前多少用户在线;提供历史最高在线数的接口;统计最近 5 分钟内上线的用户数

体验

面试官人很好,比如我 atoi 的第一版实现太简单了,面试官就提醒我:先问了下我有没有看过库函数里的 atoi 的实现考虑了些什么问题。我说没看过,然后他就让我考虑一下各种情况,然后和我一起完善、讨论边界条件。

然后腾讯会议里面试官的头像是真人哈哈哈哈,面试官看起来是个很精神的开发,电话和会议里的语气也挺有活力也好相处,体验确实不错。

二面

昨天下午三点电话面完一面,手撕从七点到九点,晚上十点左右状态就更新到复试了。然后今天下午两三点,二面的面试官就打电话来和我约时间了。他问我今明两天有空吗?我脑子一热就选了今天;_;)然后晚上七点就开始了。

问题

选择题

上来两道选择题:

  • 线程共享以下哪些资源:
    A. 栈
    B. 数据段
    C. 寄存器
    D. TID

ez,B

  • 下列操作中,多线程环境需要加锁的是?
    A. x=y
    B. x++
    C. x=x+1
    D. x=1

这题我只知道从原子操作角度入手,但是我只果断排除了 D。

我不知道 y 是不是临界区的变量,所以我不敢直接排除,问面试官结果面试官也说暂且当它是局部变量,所以我就没选。。。

应该直接用原子操作原则 ABC 全选上的。x++我记成原子操作了,我还是基础知识不到位,最后就单选了一个 C。

判断题

然后面试官问了几道判断题,和动态链接库有关的:

  • 动态链接库比静态链接库快,对吗?

    • 前面两三题都是动态&静态链接库比快慢,不过比了哪些方面我忘了=、=
  • 动态链接库可以显式加载/运行时加载,对吗?

问答题

操作系统

  • 死锁
  • 死锁的检测
  • 中断处理
    • 面试官在这里问我:如果中断的处理函数太久了那怎么办?我也没 get 到这里的点。然后面试官问我,有没有接触过响应和处理分离式的中断处理,我到这里才有点印象,我记得这个是哪个版本的 linux 内核的处理方式?2.x 的?
    • 查了下,是 tasklet 的上半部/下半部机制 555

计网

  • 我在浏览器里输入一个网址,比如 www.qq.com,浏览器从打开这个网址到返回页面为止做了些啥。
  • 讲讲三次握手,为啥不能是两次?
    • 拓展:那讲讲四次挥手,为啥这里就要四次而不是三次?
  • 你刚才讲到 HTTP 和 HTTPS,有了解过区别吗?
    • 稍微讲讲 HTTPS 的连接呗
    • 那 HTTPS 里加密对称密钥的过程是怎么做的?(问非对称加密过程)

数据结构

  • 设计数据结构:
    • 设计一个数据结构供简化的 CPU 调度使用,有以下两个调度函数:
      • ADD(time,function)
        • 往任务队列里插入一个计划:在 time 秒后执行 function 函数
      • RUN()
        • CPU 每秒都会执行这个 RUN()函数,运行当前秒所需要执行的函数
    • 我用的方案是循环数组+开链表/红黑树(效仿 hashMap)
      • 面试官和我探讨了一会儿这个问题,他就提出了不如只用链表,然后因为 ADD 的插入过程可以做排序,RUN 只需要遍历即可。这个面试官确实很好交流哈哈哈。

问项目

问了我 C/C++的项目,其实这是个偏硬件方向的项目,问了我技术选型的问题:为什么选这个系统呢,然后问了我有没有什么印象深刻的困难或者经历。

其他讨论

问了下我可以实习的时间,我说我的时间还是比较宽松的,三个月肯定有。然后就大家收工互道再见了。

HR面

HR 小姐姐人很好,挺亲切的,我们用的是腾讯会议开视频面的。

HR 面的流程也很快,好像不到半小时,聊天问问题的形式为主:

聊天&问题

  • 先自我介绍一下吧
    • 前两面都没让我自我介绍,到这儿了才让我第一次做自我介绍,所以我就懵了一下,然后发现甚至忘了自我介绍怎么做。自我介绍这种东西还是得好好准备啊 555
    • 结果我就一边推脱说我有点紧张然后一边悄咪咪地打开之前写的自我介绍看一下哈哈哈哈。HR 小姐姐好像也正在看我的简历,所以就安抚了下我,不知道有没有发现我在现场抱佛脚。
  • 那你会的编程语言挺多呀,为什么想来后台开发?
  • 好的,我看你简历上有写到社团管理经验,介绍一下呗
    • 然后我就介绍了一下这个社团,还有我做过的职位和主要职责
  • 为什么想来腾讯呢?
  • 那你玩什么腾讯的游戏吗?
  • 手游呢?比如和平精英王者荣耀之类的
    • 我是不打的,我是不会玩要用两个手玩的手游的
  • 诶,那你玩什么手游
  • 那你第一意向 BG 是选的 IEG 吗?
    • 我说不是,我填的是 WXG
  • 那你为什么想去 WXG 呢
    • 大家都懂,大家都懂。不过和 HR 聊我还是往别的方面发散扯了扯
  • 嗯,我们是做 PCG 的后台开发的,我也是 QQ 部门的 HR,这个你有问题吗?
  • 那你什么时候能入职呢?
    • 我说我都 OK,这段时间宅在家里快要发霉了,如果今天给我发 offer 我甚至可以后天到岗。
  • 我们 base 深圳,那你老家是哪里人呢?
  • 你刚刚说宅在家里太久了,那你这段时间在家干什么呢?
    • 我说我在学前端
  • 诶,你投的是后台开发,为什么会想去学前端呢?

结束

HR 小姐姐说时间差不多了 blabla,之后会回复你的 blabla,然后我们就互道再见收拾收拾就下线了。

然后过了约半小时我到官网确认了下状态,就变成已完成了

后话

一天半之后,我上课上到一半的时候 oc 来了,然后晚上七点左右收到了 offer mail。

谢谢面试官、谢谢 HR,也祝大家早日收到自己想要的 offer!

#腾讯2021暑期实习##腾讯##实习##面经##C++工程师#
全部评论
大佬是实习还是校招
点赞 回复
分享
发布于 2020-04-11 21:53
楼主准备去腾讯了吗?
点赞 回复
分享
发布于 2020-04-11 21:58
联易融
校招火热招聘中
官网直投
江苏不是快开学了吗😳
点赞 回复
分享
发布于 2020-04-11 22:01
为啥二面过了就没技术面了
点赞 回复
分享
发布于 2020-04-11 22:32
大佬,请问一面笔试题的第6题的“统计最近5分钟内上线的用户数”,这个功能应该如何实现?用队列吗?
点赞 回复
分享
发布于 2020-04-12 01:46
等你进去了旧可以给我们透露下那个复读机面试官是谁。
点赞 回复
分享
发布于 2020-04-12 02:42
请问楼主是哪个业务部门
点赞 回复
分享
发布于 2020-04-12 08:20
HR面了,许愿求过
点赞 回复
分享
发布于 2020-04-12 18:44
楼主,二面过后通知的时候说是三面还是HR面呢?说是三面代表是技术面吗?
点赞 回复
分享
发布于 2020-04-14 19:05
我也是和楼主一样,和楼主的2面题目一模一样 周一hr面试结束 2天 没有打电话 是不是就凉了
点赞 回复
分享
发布于 2020-04-15 19:22
今晚面完二面转成HR面了 不知道明天会不会有 沾沾校友的光
点赞 回复
分享
发布于 2020-04-16 21:35

相关推荐

8 80 评论
分享
牛客网
牛客企业服务