查看: 35352| 回复: 48
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 【干货】FLAG面了200+的面试官告诉你算法面试不是只有刷题这么简单

   
全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
听到很多人说, 自己刷题500+, 面试的时候明明做出来了, 还做的很好, 但是就是没有Offer, 百思不得其解。 今天就跟大家聊聊, 除了刷题, 你在算法面试中还需要做的事情。有些人说, 除了把题目做出来, 其他的部分看运气, 看面试官看你爽不爽。 其实不然, 面试官对你的印象, 其实跟你的颜值没什么关系, 而在于你在面试过程中, 对于细节的主动。 你能给到面试官最好的体验, 把他想得到的信息, 很主动的表达了, 面试官才会觉得跟你工作起来很爽, 自然加分不少。

咱们下面就按照时间轴来叙述:
面试官给你题目
首先你要知道, 面试官给你题目, 不会像leetcode一样, 整个function header都给你写好, 就等你填空的。 我们一般都是故意只给你描述一个问题, 然后来看你的发挥。所以这个时候, 如果你直接埋头写代码的话, 哪怕你很快写出来也会挂掉。 毕竟公司要招的不是写代码的机器。 只会写代码, 不会沟通, 招进来是很危险的, 还不如找个资质稍微差一点儿的慢慢培养。

应对之道
所以这个时候该怎么办呢?答案自然是问问题。比如你可以问清楚, 参数, 返回值的要求等等。

当然这个时候, 也不是随便乱问的, 你要是问一些已经告诉你了的问题, 面试官会想, 我刚刚不是说的很清楚了么?你怎么还问, 你这人沟通有问题。 那么怎么来问呢?
给大家一个小的技巧, 如果真的就没完全明白面试官的描述, 又不能直接说请你再讲一遍, 就用总结型问法。 就是把刚刚面试官说的题目, 跟你你自己的理解, 总结一下, 告诉面试官。 这个时候如果再带2个例子, 一个正常的, 一个corner case的, 也是会大大的加分。 而且不仅仅是加分, 你把例子带进去,  还可以帮助你在分析题目的时候, 更加清晰。

分析和解决问题
弄清楚题目以后, 咱们就要开始解题了。 建议这一步, 如果不是那种特别特别简单的题目, 建议举个例子, 并且给面试官用例子解释。 原因是, 很多同胞的英文确实不怎么样, 用例子去解释, 可以显得你解释的更清楚。 另一个是, 有的时候, 你不用例子去解释, 很有可能有些很关键的问题你都没想通, 就去写code, 到时候, 写code写到一半, 忽然迷茫了, 那个时候, 面试官的提示不一定救得了你。 就算捞你上岸, 也耽误了大把时间。 第三, 如果你举了正常的例子, 和一个corner case, 有的时候, 可以起到抛砖引玉的效果, 面试官可能在这个时候, 就把最刁钻的corner case就告诉你了, 那么你在这个时候, 把他的corner case研究清楚了, 到时候跑code, 他也无法用什么更难的corner case刁难你。 所以各种好处都在这里了。

另外, 在这一步, 大家其实可以主动给出时间复杂度。 好处是, 显得你很主动。 并且, 如果你的时间复杂度不是最优的, 你可以从面试官那里套出最优的时间复杂度。 套出了以后, 可以用倒推法, 反过来去推答案。 如果你做不出来的话。

写代码
这一块, 很多人觉得没什么好讲的, 但是我还是想给大家几个技巧
第一, 命名其实也是重要的。 不要再去用什么a, b, c, d, x, y啦。 这个变量代表什么就命名什么。 特别要提出来的是, 当年命名一个map的时候, 你写命名成key2value的形式, 可以大大降低你写代码的时候自己把自己弄晕的概率
第二, 拆函数也很重要, 就是不要不敢去用helper function, 如果你能用helper function把函数的各个功能表达的很简洁明了, 或者增加代码复用, 都是极好的。 可能很多人觉得, 要让自己的代码别人看得懂, 就要写注释。 其实不是的。 真正好的代码, 自己就会说话。 这主要就是来自于好的命名和拆分

最后一步, 证明你写的代码是对的
很多人写完代码就完了, 但是我推荐你主动去证明你的代码去对的。 主动肉眼跑你的代码。 最好是自己想test case去跑。
很简单的潜规则告诉你, 如果你的代码写的有bug, 如果你自己找到, 可以加分的, 如果是面试官找到, 要扣分的。 那么你为什么不用这个机会自己去找呢?

其他技巧:时间管理
还有一点儿不得不提的就是时间管理的问题。 在把情况说清楚的时候, 尽量别说废话。 特别是面试官刹不住车的那种。 虽然一般这种问题不怎么出现在同胞身上。 因为时间是你自己的, 大部分面试只有45分钟, 在此期间, 你要是做不完, 很容易挂掉。 算法面试的面试官, 很少会帮你在时间上精打细算。 就算他们需要控制时间, 也基本是只能叫你别写了。 所以别把时间浪费在废话上。 那种写一行代码解释一句的, 其实没有必要。 并不能给你的沟通加分, 还浪费你自己的时间。

-------------------

多年的经验分享, 你们要是不给米,是我的货写的不够干吗?






评分

参与人数 217大米 +458 收起 理由
jdwzx200 + 1 赞一个
小树 + 1 赞一个
Marcella + 2 给你点个赞!
a_small_potato + 3 赞一个!
ccathyzhu + 1 赞一个

查看全部评分


上一篇:纯JS API问题,订阅同步更新--大神帮看看
下一篇:【9问9答】国内211本,算法渣,工作3年在职刷题,8个月成功收巨硬offer

本帖被以下淘专辑推荐:

 楼主| o彩蝶寻梦o 2020-11-22 16:04:08 来自APP | 只看该作者
全局:
motionlife 发表于 2020-11-21 20:44:16
Totally disagree, the reality is sometime the interviewers are incompetent, they cant judge a good c
所以你更加要注意细节,一般不够成熟的面试官,更加需要你来操纵你自己的面试。你来决定你怎么去做时间分配,你给他主动展示你想展示的。如果都做到了,还是挂,那么谋事在人成事在天,这家公司你不值得去

评分

参与人数 3大米 +8 收起 理由
Phenomenon. + 1 赞一个
yuchao2019 + 1 赞一个
admin + 6 很有用的信息!

查看全部评分

回复

使用道具 举报

 楼主| o彩蝶寻梦o 2020-11-22 16:20:20 来自APP | 只看该作者
全局:
lifesuckad 发表于 2020-11-22 00:18:09
我觉得把面试就是一个很主观得东西, 没有为什么,就是你沟通多了,他觉得你不聪明,因为有的人就是不喜欢沟通, 他希望你lead。 沟通少了, 他 觉得communication 有问题。 你题做出来,
如果你水平不行,跪的概率肯定是比水平稳的情况下高的,所以我们能做的只能努力

评分

参与人数 1大米 +2 收起 理由
admin + 2 很有用的信息!

查看全部评分

回复

使用道具 举报

推荐
lifesuckad 2020-11-22 16:18:09 | 只看该作者
全局:


我觉得把面试就是一个很主观得东西, 没有为什么,就是你沟通多了,他觉得你不聪明,因为有的人就是不喜欢沟通, 他希望你lead。 沟通少了, 他 觉得communication 有问题。 你题做出来, 有bug 跪, 没bug 不是他要得解法, 跪, 你的解法他理解不了 (1. 面试官智商有问题,我确实碰到面试官 明显不精通刷题,(题库)2.  确实你写错了)。有的面试官不愿意引导, 或者 我觉得他本身沟通能力就有问题, 就是看戏,感觉和你欠了他钱似的。
完全没问题。 (HC, 或者面试官觉得你写得不够简洁)。 没做出来, 他觉得你蠢。都是命。有的人 写的代码有问题(bug 不bug 那都不是事), HC 觉得可造之才, 有的人全做出来, HC 觉得还要做的更好,100 % perfect。天时地利人和。和你得水平可能也就 20 % 得关系。

评分

参与人数 7大米 +7 收起 理由
agign + 1 给你点个赞!
Neroldy + 1 很有用的信息!
tangyao1991 + 1 赞一个
Phenomenon. + 1 赞一个
quus + 1 赞一个

查看全部评分

回复

使用道具 举报

推荐
JennyP 2020-11-23 07:10:03 | 只看该作者
全局:
某次经历:面试官给出了问题,做过类似的,但还是遵循步骤,问clarifying的问题,面试官非常不耐烦。当时有感觉面试官是不是想这么简单的题居然还要问问题,我是不是该给个解法,他同意了就写代码?于是试着询问可不可以。。。这样做。然后面试官说我做过这道题,脸色跟语气更差。问了很多刁难的问题。忍受面收官类似attacking般的态度结束了那一轮,第二天拒信。

一开始就不想给过,面试过程还对candidate发火。

评分

参与人数 1大米 +1 收起 理由
Phenomenon. + 1 赞一个

查看全部评分

回复

使用道具 举报

🔗
tm1234 2020-11-22 07:31:35 来自APP | 只看该作者
全局:
干货!zszszs
回复

使用道具 举报

🔗
sleepywk 2020-11-22 10:34:32 | 只看该作者
全局:
确实是干货。给你点个赞
回复

使用道具 举报

🔗
motionlife 2020-11-22 12:44:16 | 只看该作者
全局:
Totally disagree, the reality is sometime the interviewers are incompetent, they cant judge a good candidate or they were just jealous.
回复

使用道具 举报

🔗
yt.sssun 2020-11-22 16:00:18 | 只看该作者
全局:
收藏本贴!! 谢谢分享,细节处决定成败
回复

使用道具 举报

全局:
感觉是总结的确实是FB,FB风格就这样,做题做题,但是别家还是有别的风格,比如亚麻就喜欢扯别的的人
回复

使用道具 举报

🔗
Tenkoi 2020-11-23 01:32:01 | 只看该作者
全局:
细节处决定成败
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表