当前位置: 首页 > 面试经验 >

快手c++工程师面经

优质
小牛编辑
74浏览
2024-08-29

快手c++工程师面经

一面

问题

主要问了我在实习的时候做过的事情,以及在实习的时候遇到的困难是什么,怎么解决的。

算法题

多个有序链表合成一个有序链表

一个差分数组问题,一个贪心问题

反问

问了部门内的业务,说是做直播和音视频开发,后面我说我有过音视频的学习经历但是没有在简历中写出来,面试官说如果看到了会问我ffmpeg相关的东西,快结束的时候我才知道是面的直播那边的部门。

二面

问题

  • quic是什么,quic有什么优点,为什么要用quic而不是tcp,quic的拥塞控制算法是什么
  • tcp的rtt怎么算出来
  • ping的原理是什么
  • 协程是什么,协程和线程的区别,协程的实现原理
  • 虚拟内存是什么,怎么加速搜索页表项的查找,为什么要使用多级页表
  • memory_order是什么
  • 虚函数表是什么,虚函数表有什么内容,什么时候需要获取虚函数的其他信息(RTTI)
  • 位置无关代码是什么,为什么要使用位置无关代码,位置无关代码怎么实现

算法题

TOP K问题,一个数组中找出前K个最大的数

要使用快速选择算法,时间复杂度O(n)

总结

这一面答的是真的不好,网络那一块没有回答出来,RTTI和memory_order不知道,还有一开始出了一道比较简单的算法题,做了好久。TOPK也没有想到使用快速选择算法,问时间复杂度的时候也想了好久才回答出来,然后又问了快速排序的平均时间复杂度和最坏时间复杂度,就结束了。然后也没有问音视频的问题,可能是不同的组来面的。

 类似资料: