注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
背景:去年12月毕业,之后在某手机公司干了八个月,然后部门被裁,公司提前俩月通知,于是从8月底开始找工作,当前身份是H1B,截至昨天面完最后一个,发一些经验供大家参考。虽然毕业不到一年,但是我也不知道各个公司是不是把我当new grads面。
--------------------------------------------------------------------------------------------------------------------------------
8/22/2015 - Baidu - 网申
Baidu online assessment:
用interview.io做题,一小时。第一部分是10道C++概念,一个一分钟,有计时。不简单,即使一边Google一边答,看完概念组织语言写也来不及。
第二部分,50分钟写一个C程序,文件相关的,框架有了,添加函数体就行。需要写的函数分别是Ls,Mkdir,AddFileWithContent和GetFileContent。
提交之后就没收到过任何feedback,也是面了这么多,唯一没有feedback的。
--------------------------------------------------------------------------------------------------------------------------------
8/25/2015 - Google - Recruiter在LinkedIn上主动联系
Google电面第一轮:
面试官是俄罗斯口音大叔,问了一道题。
给一个字符串,比如abcccccd,写个算法把它加密,要求变成ab5xc。其实相当于加密函数如何工作告诉了,然后实现一下。接下来说解密是,一旦读到数字,就解密x后面的字符。用这一套解密解密会不会有不能解出来的字符串。答曰有,比如ab3cccccd。
接下来问在不改变解密算法的情况下,如何通过修改加密算法,使得任何字符串都能被顺利解密。答曰比如ab3cccccd,先变成ab1x3cccccd就行。面完后一小时recruiter说可以约第二轮了,有可能是这一轮一直在交流,代码量很少所以加一轮吧。
9/14/2015
Google电面第二轮:
面试官应该是美国人,男的,全程不大理我,没有自我介绍直接做题。
第一题是给一大堆有start time, end time和ID的events,返回存在conflicts的events。用的类似merge intervals的方法做。要注意如果俩events有conflict,俩events都要加到result里,注意别加重复了。
第二题,给一个都是integer的matrix,找最长上升path的长度,DP做。大约一周后recruiter说安排onsite。
10/2/2015
Google onsite (MTV):
签了NDA,不便透露题目,在最后的高频题目里会涉及一些。总体难度感觉确实很难,是这一批面试里面最难的,五轮technical一轮吃饭。除了下午第一场是华人别的全是美国人,一个个很geek的样子,有俩设计题,其中一个很开放,想说一下这个因为觉得很有意思。
在没有计算机的时代,我要做一个任务,就是统计莎士比亚这本书里所有单词出现的次数。给我一个大操场,一个小学校(孩子们随意调遣,他们能做简单的读写,但是没啥耐心还可能随时被家长接走),一大堆纸和笔,一台复印机。然后问题是我如何完成任务。其实主要就是讨论并行任务如何完成吧。
中午陪我吃饭的大叔是做底层相关的,他说他当初加入Google的时候被问了一个二叉树遍历,他直接就问面试官,为啥我要做这个?你平时用吗吗?你看你都不用你问我干啥?……然后他还是过了,因为背景牛逼,听他讲太有意思了:)
目前结果未知。
-------------------------y design。我就给了head first那本书里面的例子。
第四轮是美国大叔,给我讲解了Apple pay的架构,然后我们就此展开讨论。问了给这么一个系统我怎么测试。我没说一类测试,他都会写下来这类测试叫什么然后给我讲。与其说这是面试,更像他在给我讲课。
第五轮是一个德国爷爷,我觉得真的是爷爷因为感觉他牙都掉没了。一进来看到白板上上一轮画的图,就让我给他讲我学到了啥。然后问了我当学生时做过的项目。最后问了俩coding,分别是anagram和binary search相关的。
第六轮是印度大叔,问了项目,问了找linkedlist cycle,时针分针夹角问题,还有个是给一个matrix,斜着打印。
第七轮是印度大叔,一上来先问,用户在浏览器里输入www.apple.com然后按下回车,会发生什么,越细越好。我就从浏览器cache,DNS查找,TCP三次握手,HTTP request这个么流程说。每一环他都会问一些具体问题,比如TCP和UDP的区别,分别啥时候用,再有HTTP header有啥,每一种request type是啥怎么用。再之后让设计了一个小系统然后测试最后实现,具体也想不起来了。
面完之后我更加觉自己对测试不大感兴趣。目前结果未知。
--------------------------------------------------------------------------------------------------------------------------------
我遇到的高频:(不一定完全一样,以下列出来的是本质差不多的lc原题)
Merge/Insert intervals I and II
Word break I and II
Valid parenthese (what if the input string is a stram and it’s super long?)
Binary Tree Iterator (pre + in)
Zigzag Iterator (N lists, cannot directly access by index)
Perfect square
其他: Binary expression tree to string, design and implement tiktak game.
考察点除了代码外还有时间复杂度,另外会被问到更好的算法。有的问题也许不一定有更好的,但是貌似面试官想看看你分析问题的能力。
以上。准备面试的时候看了很多同学的帖子,非常有帮助,希望自己也能帮到大家:)
|