秋招快手面经

快手c++开发面经

一面面经(10.13)

1、了解c++11吗?
2、说一下转移构造函数等概念
3、说一下lambda表达式的原理?匿名函数?他和B包的联系
4、说一下智能指针,weak_ptr怎么获知当前shared_ptr已失效
5、看一个函数指针数据的代码,解释一下意义,两个指针相减
6、说一下多态的分类
7、内存对齐的意义和规则
8、tcp和udp的区别
9、osi七层模型说一下
10、tcp粘包问题和三次握手四次挥手
11、说一下操作系统的线性内存?我按照虚拟内存解释的?
12、线程进程区别?引申了linux线程的内核实现
13、中断的分类
14、说一下系统调用
15、说一下进程上下文切换的过程
16、说一下muduo项目的框架?rector模型
17、说一下epoll的底层实现,epoll和select区别
算法:链表排序

二面面经(10.14)

1、说一下项目难点,存储方案如何选择的,接口设计的难点
2、说一下map和unordered_map区别和应用场景
3、vector的底层原理,他和list的区别,vector扩容的原理,为什么是2倍
算法:二数之和、二分查找找到target,否则返回插入的下标

三面面经(10.18)

1、主要讲快手的项目经历,怎么实现的线程池,一些参数设置考量,什么是流水线架构
2、讲讲线程安全同步的方式
3、讲讲静态web服务器的框架reactor、epoll的实现原理
4、与proactor区别,线程切换比较少,系统调用少一些。
算法:3个线程循环打印ABC、一个数组中有些数组重复,在非重复的数字中找到第k小的数,分别用优先级队列和快排实现,他们的时间复杂度。
#快手面试##快手##面试题目#
全部评论
加油!
点赞 回复
分享
发布于 2021-10-21 19:14

相关推荐

头像
04-08 11:38
已编辑
门头沟学院 计算机类
快手二面:1. jdk1.8之后jvm的内存模型?1.8之后还有方法区吗?讲讲永久代、元空间是怎么回事?2. 讲一下垃圾回收器?比较一下cms和g1以及各自的适用场景3. 什么是oom?内存满了,怎么排查是代码哪里有问题?(我说pstack,他说不是栈满了,我说不会,没用过,面试官说没事可能有点偏有点偏业务应用)4. 线程池有没有用过?核心线程和非核心线程区别是什么?核心线程数设置的考量因素有哪些?没有任务的时候核心线程和非核心线程是继续存在还是销毁?jdk有没有提供销毁核心线程节约资源的方法?我如果想要动态核心线程数而不需要重启服务怎么实现?(想了很久不知道。。)5. 来个计网八股意思一下,讲一下tcp和udp的区别?慢启动是什么?6. mysql的索引数据结构是什么?聚簇索引和非聚簇索引的区别?数据库有哪些锁?select * from user where userid=5 for update是什么锁?假如usreid是索引但是没有这个数据,锁的是什么?没有索引也没有5这个数据,锁的是什么?7. 项目分布式锁为什么用redis不用别的?(一下不记得区别了,我说因为和java有redission集成,功能丰富并且使用方便。。)讲一下redis的集群结构?你们用的是什么?我说一主多从,他说流量大的时候扛不住,没有用分片吗?我说我知道分片slot,那个确实可以,不过我们数据量不大就没用。。跨服务的时候怎么保证多个数据库的数据一致性?然后还有针对项目业务场景的一些分布式问题。8. 手撕:合并K个有序链表。我说顺序合并,面试官问时间复杂度是多少?能不能优化?优化后是多少?9. 反问环节聊了15分钟,说快手80%流量都是他们组的,快手上下滑刷到的视频以及点赞评论收藏那些功能都是他们组,来这里之后做好卷的准备。我问对我有什么评价或者建议吗,面试官说虽然有些应用层次的深度还不够,不过其实还不错,应该问题不大,后续还有个老板的技术面,加油攒人品,求个三面4.8还愿:约三面了 #春招#
点赞 评论 收藏
转发
3 42 评论
分享
牛客网
牛客企业服务