V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hakunamatata11
V2EX  ›  推广

国内应届生是不是把 Leetcode 刷的滚瓜烂熟就能进 google 了?

  •  
  •   hakunamatata11 · 2020-06-05 10:26:17 +08:00 · 1314 次点击
    这是一个创建于 1617 天前的主题,其中的信息可能已经有所发展或是发生改变。

    国内应届生是不是把 Leetcode 刷的滚瓜烂熟就能进 google 了?

    这个大家意见挺统一的,我仅从不同角度来说下为什么不能。

    因为 Google 面试出的题目你大多不能在 LeetCode/LintCode 上找到原题。**

    Google 算法面试的一大特点就是喜欢出新题或者变种题,你可以去翻翻面经,基本上很少会有原题出现。所以 LC 刷得再熟练,没有真正理解的话,可能换个马甲就不会做了。

    另外算法面试的时候,如果你很快秒掉一题,面试官可能会再出一道题或者各种 follow up 。无脑刷题背答案是没用的。

    大家水平都差不多,那最后会以什么标准区分呢?

    像 Google 这样的大厂,面试评价体系已经很标准了。这里我们只讲算法面试,实际上还有系统设计和行为问题面试。

    来看一道题,结合具体例子来感受下吧

    最长回文子串 Longest Palindromic Substring

    对于这道题,面试评价从高到低如下

    Strong Hire

    使用 O(n) 或者 O(nlogn) 的算法实现出来 (Manacher’s Algorithm or Suffix Array),并且代码优秀,无 Bug 或者有很小的 bug,但是能自己发现并解决,无需太多提示

    Hire

    能够分别使用枚举法和动态规划实现时间复杂度 O(n^2) 的算法。并且代码质量合格,无 Bug,无重复代码,无需面试官给提示。

    Weak Hire

    只使用了其中一种 O(n^2) 的算法实现出来,代码质量还不错,可以有一些小 Bug,面试官可以给一些小提示。

    No Hire

    只能想出一种 O(n^2) 的算法,但是 Bug 太多,或者需要很多提示。

    Strong No Hire

    连一种 O(n^2) 的算法都想不到

    4-5 轮面试下来

    有 >= 1 个 Strong No Hire => No offer 有 >= 2 个 No hire => No offer 有 1 个 No Hire + 1 个 Weak Hire => No Offer 有 1 个 No Hire,其他都是 Hire => Offer or 加面(取决于公司招人多不多,门槛高不高) 有 1 个 Weak Hire => Offer or 加面

    一种极端情况是: 一个 Strong Hire + 一个 Strong No Hire => 开个会一起讨论一下,通常结果是加面或者 No Offer 。

    总结一下,就是面试不一定会要求你用最优复杂度的算法来解决问题。而只刷 LC 的话,会容易让你产生一定要用最优解来做题的误区。

    还有代码不是写出来就可以过的,代码质量同样很重要。

    好的代码质量包括:Bug free,良好的 Coding Style (包括变量名命名规范有意义,合理的使用空格,善用空行等),容易让人读懂的逻辑,没有冗余代码,有边界检测和异常处理。

    先实习再转正是不是很容易?

    这个得看公司,很不巧,G 家实习转正很不容易。至少在北美是如此,国内的话竞争应该会更大,不要说转正了,实习就很难拿。

    说下北美这边 Google 实习要怎样才能转正。

    谷歌实习转正需要 4 个 feedback,一次实习可以从 host 和 co-host 那里各收集 1 个 feedback 。

    剩下 2 个有两种方法获得:再实习一次,或者通过两轮面试。

    所以如果要拿两次谷歌实习,至少要提前一年就做准备。并且第一次实习的表现决定了会不会给第二年的实习 offer 。一般大部分人时间只够一次实习,再加两轮面试才有机会转正。

    关于算法面试的方方面面,我在《九章算法班》里面讲得很多了,除了怎样正确高效地刷题,和面试官如何沟通,如何提升代码质量,大厂的面试风格等等都有所涉及。最新一期正在招生中,有 3 节免费体验课,可以领取九章算法精选 100 道算法面试题哦。

    dikey
        1
    dikey  
       2020-06-05 11:06:10 +08:00   ❤️ 1
    我帮大家提炼:最新一期正在招生中,有 3 节免费体验课,可以领取九章算法精选 100 道算法面试题哦。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2322 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:58 · PVG 23:58 · LAX 07:58 · JFK 10:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.