好消息:面试官出的算法题我见过
坏消息:要用小根堆,但我不会用C++的优先队列
好消息:面试官让我现写一个小根堆,又get到一个面试消磨时间的秘诀
大概面了一小时出头,面试官不是cpp的,所以对着简历问计算机基础八股,面试体验良好,不会的面试官都会引导
1. 自我介绍
2. 看着webserver问八股
2.1 http有哪些方法(*)
2.2 http头部有哪些字段(*)
2.3 为什么要有http长连接
2.4 长连接的断开机制是什么(*)
3. tcp断开连接的过程是什么
3.1 time_wait多长
3.2 为什么time_wait是2msl
4. https连接的过程
4.1 为什么要用对称加密来通信而不是非对称加密
5. 拥塞控制的过程讲一下
6. 智力题
6.1 5升和6升的杯子,怎么量出4升水
6.2 25匹马,5个赛道,最少进行多少次比赛可以得出前三名
7次
7. 算法题
7.1 数组求前k大个数
我说思路是用小根堆维护k个数,最后小根堆里剩余的就是前k大个数,面试官让我实现,我不会用c++的优先队列,于是面试官让我实现小根堆
7.2 还有其它思路吗?
说了选择排序的思路,时间复杂度O(n*k),但最坏情况会退化为O(n^2)
7.3 还有其它思路吗?
说了快排的思路
8. 反问
8.1 面试流程
两轮技术面 + 一轮hr面
8.2 语言和业务
得转java或客户端
8.3 面试结果什么时候出
三天内
复盘后感觉有点像kpi面,希望别挂
更新 已约二面