被面试官用十招坑死面试中的反击攻略

6706
14
来总结一下面试官都有什么手段坑死面试者, 以及应对策略。

第一招:故意不说清楚题目需求。 比如说题目说, 给我算出这个array里面和大于k最短的subarray。 这个时候, 你要是不问一下, array里面有没有负数, 那就死的很惨了。 有没有负数决定这个题目是medium还是hard
应对策略:问清楚需求再下笔

第二招:出看起来没有很难, 但是很难bug free的题。 比如面试官温柔的说, LRU Cache知道不?来给我写一个。 然后你一顿狂写, 发现一堆的bug。 碰到那种不让跑代码的公司, 真的是更加欲哭无泪
应对策略:每天写一遍LRU Cache, 直到能一次写对为止

第三招:出难题, 比如说出哪个旋转光束那个题目。 即便是你算法基础超级好, 刷了1000道题目, 料你也不会计算几何。 然后就挂的妥妥的。
应对策略:增加自己的刷题广度

第四招:出那种没做过一遍, 根本想不到做法的题目。 题库里面还是有很多脑经急转弯的题目的。 比如说O(1)space, 不能改input, 找出第一个缺失的整数
应对策略:如果稍微有点儿感觉的那种, 给出面试官一个十分暴力的解法, 套出面试官想要的时间复杂度。 如果实在想不出来, 就直接问, 面试官时间复杂度。 知道了以后倒推回去一个一个试。 比如说, 面试官给了nlogn, 那么你就想一想, 能不能用sort解决, 能不能用heap解决。 还有就是捕捉关键字, 比如说最这个词, 听到以后, 就试试看dp吧。 如果还是不行, 那只能多刷题了

第五招:在你Coding的时候不断的说话, 不断的打断你的思路
应对策略:首先在面试之前把思路讲清楚, 然后写代码的过程中, 如果他打断你, 你就再给他讲清楚, 免得继续打断你

第六招:丢完题目以后就不屑一顾的看着你, 完全不帮你
应对策略:多面试练就强大的内心

第七招:当你写完代码以后, 不断的让你propose新的test case来让你的代码出bug
应对策略:题多刷一点儿, 对自己code多点儿信心

第八招:你写代码的时候, 不断的给提示, 哪怕你并不需要, 最后写feedback的时候再说你不independent
应对策略:尽量把code分成好几个function, 每个function都有独特的responsibility,然后一个一个function 测过去, 不要给面试官给你提示的机会。 哪怕一时半伙儿写不出来的地方, 加个todo放在哪里, instead of写出一些容易错的代码等着他去提示

第九招:问你BQ问题的时候故意挖坑, 比如说, 能不能给我说一个你之前miss deadline的example。 然后听你说完了这个example, 反手feedback里面就写这个人不能meet deadline
应对策略:不要直接回答!问你miss deadline的问题, 你就给他一个, team某个人本来要miss, 结果你冲进去力挽狂澜的例子

第十招:不注意时间控制, 明明还有2个follow up却还有让你把前面那一个部分test case手动跑到完美
应对策略:首先要刷题刷到对自己的code有自信。 然后就是自己去把握节奏, 比如那种bfs的问题, 你如果要用肉眼跑测试的话, 你可以propose说这个test case 太大了, 我故意换个小点儿的, 或者单独测你的helper function, 或者就跑关键那几步, 后面就跟面试官商量看看能不能省略。

好了, 今天就给大家总结这十招。 如果能够帮到你, 希望给加个米。 本帖也属于抛砖引玉形式, 欢迎大家踊跃回复自己被坑的经历, 以及总结出来的应对之道。
  • 133
14条回复