首页 > 头条C++后台三面面筋,头冷

头条C++后台三面面筋,头冷

笔者三月笔试完后  约在了某天星期六一口气完成头条面试流程
面完可真是头冷。
从上午十点面到十二点半,肚子有点饿(没吃早饭)
一面:
1.先来个自我介绍吧

2.数据库相关
问:数据库会吗
答:正在学,不太了解
问:redis了解吗
答:不了解。。。

3.算法相关
问:你说你平时喜欢做些算法题,那你说说哪道题让你印象深刻
答:说了个 https://leetcode-cn.com/problems/first-missing-positive/

4.C++相关
问:数组和指针有啥区别
答:(省略三百字)
问:指针和引用的区别
答:(省略三百子)
问:C++对象内存模型
答:(省略五百字)
问:new和malloc的区别
答:(心里:不能来点有新意的吗(此乃谎言))
问:C++11有了解吗?
答:auto,nullptr(顺带说了相比于NULL的好处),智能指针(RAII原理),右值引用,move,forward,function,bind,新容器,范围for等等(感觉良好)

5.那我们码点代码吧~
问:用栈实现队列
答:双栈实现,约用时3分钟
问:求数组里连续子序列和最大值
答:(练习的原题)快速敲完,用时约2分钟

6.小子别走,等十多分钟二面..

二面:
1.先来个自我介绍吧~

2.数据库相关
问:数据库会吗
答:正在学,不太了解
问:redis了解吗
答:不了解。。。(您是复读机吗??)

3.问项目<HTTP服务器>
问:断线续传的实现
答:if-range,range,Etag。。。
问:不加锁能让任务队列线程安全吗
答:<开始胡吹模式>
问:https了解吗
答:sll,公钥,私钥,非对称加密
问:输入url后发生了啥
答:BALABALA。。。
问:GET和POST的区别
答:(都9102年了还有人问。。)BALABALA<后面加入了一段汤神的装逼阶段>

4.看你前面敲的代码很不赖,让我们敲点设计类的代码吧~
问:用数组<vector>实现队列
答:队列有大小限制吗<有的话可以实现循环队列>
问:没有大小限制,你就实现一个类似STL的就行
答:<这就有点难办>我直接用了vector的erase(begin())作为pop()
问:你这pop时间复杂度是不是有点高?
答:<果然是个老狐狸>维护队列首尾指针,这样pop()效率O(1),但是会有空间浪费,同时内存会越用越大,所以前面空缺长度超过队列长度,就开始往前拷贝,缩减vector大小,这能保证顶多一倍的空间浪费,尽量少的时间成本。<感觉他较为满意>

5.小子别走,再等会,有三面,还是这个视频房间

三面:
1.先来个自我介绍吧~

2.数据库相关
问:数据库会吗
答:正在学,不太了解
问:redis了解吗
答:不了解。。。(确认无疑,复读机)

3.问项目<内存池>
问:说说框架
答:BALABALA。。。
问:说说遇到的难点
答:TLS
问:说说你觉得不足的地方
答:有些地方调用了new,用了STL<底层仍用malloc>,unordered_map在64位下应该用基数树来实现映射关系,g++应用_attribute,windows下应用hook来完全取代malloc等等<感觉良好>
问:malloc怎么实现的
答:BALABALA。。。

4.我看了你之前的代码,你很有想法,让我们敲点代码吧~
问:给你接口能获得与此地铁站相通的地铁站,怎么找到最短的路径到达目的地铁站?
答:BFS/DFS都可以
问:说说区别,你觉得哪个好
答:BALABALA。。我觉得BFS好,因为找得快<本次面试最大翻车点。。>
问:那你写写BFS的伪代码吧,用我给你的接口
答:(没写过BFS,相当后悔,应该说用DFS,理由:地图软件会同时显示多条路径,只不过最短/最快路径优先展示而已,BFS无法达成这样的功能,更大的原因是我写DFS是把好手,简直轻车熟路,就不该说什么BFS<后悔中。。。>(写了约十分钟后)我:面试官老师,咱能换一题吗,或者我用DFS写个给你看看?
问:<耐心指导若干时间后。。看我还是没写出来>我们时间有限,来不及换题了,这样吧,你还有什么要问的?
答:。。。

HR面:
1.恭喜你通过前面面试,你看啥时候能到岗:随时可以,多久都行~
2.我们的待遇你了解吗:了解,行业顶尖,没得挑~
3.加你微信,咱们慢慢聊:好的好的~

全部评论

(19) 回帖
加载中...
话题 回帖