腾讯PCG timeline + 面经
4.9 一面 50min
- 讲一下你的项目主要是干什么,是自己做的吗?
- 为什么在开发中使用Redis呢?Redis有什么作用?
- SpringBoot你的理解,为什么要用SpringBoot呢?
- 讲一下java内存管理,java有gc是吧,那编程时有什么需要注意的地方吗?
- Java中方法的调用过程?
- 快排有了解吗?最差时间复杂度是O(n^2)对吧,如何优化呢?然后问我java的Arrays.sort的底层实现看过吗?你想一下快排相对于其他排序有什么区别,有什么优点?不考虑优化算法,就是能不能考虑一下待排序的数组?
- TCP为什么三握手
- 我问你个C++问题吧,你对C++纯虚函数的理解? 在java中有对应的吗?
- 手撕:给定几个区间,合并有交集的区间(按左边界排序)
- 你想来客户端吗?【我犹豫了一会,现在想想真怕给我挂掉】
面完10min通过
4.11 二面 30min
- 你这个项目中主要实现了那些功能?
- 为什么会有缓存穿透、缓存击穿、缓存雪崩问题,你是如何解决的?
- 你有没有进行MySQL数据库查询性能优化?数据库有哪些优化查询性能的方法?
- 你如何评估你这个系统的性能呢?假设访问量超过了你的最大访问量,该怎么办?你觉得你这个系统有哪些可以降级的地方?服务降级是没有办法的办法,在这之前还能怎么办呢?假如你的redis和MySQL配置了集群进行横向扩容,你怎么知道扩容之后就能满足需求了呢,有可能还没到这里就崩掉了啊?
- 你这个系统有没有注册登录功能?你有没有考虑登录key过期问题?比如我登录了,但是登录key被窃取了,不法分子就可以拿走你的登录key去攻击你的系统了啊?
- 介绍一些快排与堆排序?那种效率更高呢?它们两个时间复杂度一样甚至快排的最差时间复杂度还会达到O(n^2),为什么快排效率更高一点呢?双轴快排为什么比快排效率高呢?你了解过Linux的qsort系统调用是怎么实现的吗?c++的sort() 呢?
- 解释一下什么是红黑树?有什么应用场景?平衡二叉树有什么缺点呢?
- B树和B+树有什么区别?
- 解释一下什么叫虚拟内存?64位系统地址空间是2^64,这些都是可访问的吗?在一个64位系统上面虚拟内存可以有多大?
- 堆内存和栈内存的区别?为什么要分成堆、栈两部分呢?
- HTTP和HTTPS有什么区别?HTTPS是怎么进行安全传输的呢?HTTPS建立连接的过程是怎么样的的?
- HTTP/2.0了解吗?你了解过QUIC协议吗?有什么好处?为什么HTTP/3.0要使用UDP呢?你使用过QUIC吗?
- 你平时是怎么进行学习呢?一般是通过什么渠道了解新技术的呢?
30min + 面试官没开摄像头 + 没有手撕 以为是KPI,没想到HR约面了
4.15 HR面 20min
纯拉呱。本来面的是客户端,HR和我说可以根据我的意愿选择客户端还是后台开发
面完晚上十一点转录用评估 + 云证
4.18 OC
当天下午就收到offer了
#我的实习求职记录##我的求职思考##腾讯offer##实习生开奖#