算法面试流程:三个问:举个栗子问,暴力解需要优化吗问,复杂度问

心态:和同事平等交流的心态
 
tony给的面试技巧:不会就跑几个Case 讲不清楚就画例子,只说思路不写代码,先写大框架再写具体的,要说复杂度。稳重为主,说得慢也比乱说要好。

【回答的步骤】小case进去,列出所有方法然后问一下,大case出来。然后准备一个段子(我觉得就是合作的那个吧)
开场:不卑不亢。你就假装其实你已经有了另一个FLAGUAP的Offer了,
就不会太患得患失的,你的气场会感染面试官的。见过太小心的面试者,第一印象不好。

同时背一个百用的自我介绍段子,跟你要做的工作技术不要有任何关系,也不要出现在简历上。
这个段子可以是个小故事,越细节越好。给把这个段子背熟了。
当你听到“introduce yourself”的时候就条件反射一样滴说出来这个段子。
然后马上甩包给面试官“how about you, what are you working on" 等等,
这样能马上结束寒暄阶段,正式进入我们计算机学生最擅长的技术阶段。

需要准备至少3-4个故事,比如怎么处理和team里的人的conflict,项目要miss deadline了怎么办的等等。实在没有?那也要编啊。
一定要有细节,因为面试官会问得很细。还有一句“废话”,要显示出你对产品的热情,对自己职业的热情,而不是就安于一个“码农”,说说你怎么提高自己的,online course? open source project?

其他大厂也许不一样,但是狗家技术面寒暄之类的都是过场,所以你的回答别太长了,因为你占用的是自己一会儿解题的时间。
但也别就两句话,自己把握吧。亚麻有LP内容,还是需要认真答的,但是面试官应该给你留够时间解题。

确保你理解了问题,并且尝试一个例子,确认理解无误

想想你可以用什么方法解决问题,你会选择哪一种,为什么?
先在白板上把你的数据结构和算法解释了,给出space and time complexity(别等人问)。 
不要马上写code。 如果你秒杀暴力算法,就直接接着优化吧. 
有的题目很明显是要优化的,但是你还是可以很快的提一下暴力解法。
Of course you are not looking for this brute force implementation. 
OK, this can be optimized by … 
展示一个有层次的分析问题的过程,远远好于上来就提出最优解。
多说话才能展示你对不同数据结构和算法的掌握啊。
Communication在打分里是和data structure,algorithm并列的一项,你说有多重要。

解释你的算法和实现的方法

开始写code之前问一下:should I start implement it in code, or you want me to conitnue to optimize it? 我应该开始在代码中实现它,还是希望我继续对其进行优化?
这样你也大概知道你的位置和面试官的期待在哪里。

思考过程千万不要沉默,也不能完全的自言自语(因为他需要听你的思考过程)。
如果你会紧张,把面试官想像成你的teammate或者一起做题的小伙伴(就是那种你熟悉的,给你信心的场景),
你们一起来解这道题,你给他讲解你的想法。

写代码的时候,记住,一定要解释你现在在干什么。

字迹不要太潦草。你不赶时间,除非你思如泉涌怕自己忘了。
一些null checking的无聊但是必须的语句,
在征得面试官同意的情况可以只写一个comment:// check null etc… (May I skip these checks to save time?). 
但是这个comment一定要写,否则面试官可能写报告的时候会忘记。

拿一个实例,Work Through你的代码

修复缺陷,保证异常情况都被考虑到

基础知识面试阶段,只有一问一答,一般都是标准答案。这阶段的面试时间不会太长,你的时间有限。
一定要在有限的时间里面回答更多细节更多问题哦。
所以,当准备阶段,你理解所有概念的阶段,就试图用你要面试的语言去理解就对了。

这阶段虽然是让你问问题,但其实是面试官给你最后的表达自己的机会啊。瞎扯就好?扯对方擅长、能打开话匣子的方面
**问一个你熟悉的技术相关的问题。**比如,我本科学学过信息安全,我就问问安全方面的,
然后当面试官答完我的问题后,我还能评论两句,说对呀对呀,哎呀我以前也这么想的,
但我觉得XXX还能提高。真的很高兴能跟你聊之类的。把话语权控制在自己手上,不要让它溜掉。
这一切的一切都要靠自己强大的表达能力啊!

对自己口语没有太大信心的,找个题,边写边讲,用手机录一下自己听听。
国人有时候讲英文会吞字节,不太清楚,但是自己不知道,所以要自查一下。

原文地址:https://www.cnblogs.com/immiao0319/p/14004829.html