微软STC实习生面试

今天终于收到了微软一封貌似offer的邮件了,也算松了半口气。从四月中的机试,通过三轮面试,四位面试官到现在,真是虐心之旅啊~

机试表现很挫,A两题,而且第二题是在deadline的最后七秒提交的,所以等到十几分钟后才看到答案,幸好一遍AC~~~~真够悬

后来参加了一个网上的心理和职业测评,结果同学很快收到面试通知我没有,我以为被定位心理变态了~其实那是MOD组的面试

然后收到网上面试的通知,这是我第一次网上面试,所以找了宿舍台好点的电脑,调试好麦克风耳机,等着面试官上线。面试官挺好,最开始问了下简历项目,和他说了说就开始问技术问题了。问的也很简单有道题是:数组和链表的区别。我说:数组可以通过下标快速索引,链表得通过指针迭代。但面试官貌似不满意这个结果,因为太简单。我接着说,数组在定义之初大小就固定了,链表大小可以动态变化,面试官还是不为所动。我接着说,数组内存是连续的,链表则不一定了。面试官貌似就是在等这句话。呵呵。然后他问了一个洗牌问题:给你一副牌,你洗下。也就是给你一个54大小的数组,你需要将它打乱。我开始说可以用类似哈希的办法。给每张牌找个随机位置,如果位置已经有牌了就用解决冲突的办法再找新的位置。面试官说,理论上解决冲突的时间复杂度是n的平方,有没有时间复杂度更优的办法?我说:如果要在更短的时空复杂度内解决的话只能将牌两两交换了。他问怎么交换。我说首先相邻的交换,然后相隔一个的交换,等等。他问,这样还随机吗?我觉得我出糗了。只好补救说,交换两张牌的相邻距离可以随机。他说,这样可以,我要的差不多就是这个方法。然后问了一个找链表中是否有环以及环的连接点的问题。这个问题比较简单。然后问了另外一个问题需要手写代码,其实问题是leetcode上的一道原题:Best Time to Buy and Sell Stock。大家可以去看看,之前没做过这道题,现场写的,但后来发现我的方法的复杂度和网上的方法是一样的。但代码中有个小瑕疵,面试官问了几个问题确认代码正确后面试就结束了。但面试官最后问我还有啥问题,我遇到这种问题时一般会问他是做啥的,然后就可以听他扯了。

接下来接到第二面的通知。二面是现场面,面试官是个大姐,打完招呼奉上简历,她叫我做了下自我介绍后问我实验室研究啥。其实我实验室的项目根本没做,一点都不懂。我就说是搞目标追踪的。你用啥算法了?说卡尔曼啊!那你把卡尔曼那几个步骤写下来吧!我顿时懵了,一点不会啊~我说其实我主要是研究NCC匹配的,呵呵,她说:那NCC是啥意思,什么的缩写?我晕,真忘了~我觉得这次我打酱油了,脸上开始流汗,她也发现我流汗了。没想到她没收手不停的逼问我,哎,真是尴尬啊,吱吱呜呜半天没个谱。后来和她聊我觉得她可能是控制出身,所以对这几个算法很了解。但我总结一条经验:不熟的简历上一个字儿都别提,嘴上也别提!后来她终于放弃了,问了几道简单题全当放水了吧。写代码,一道是二叉树深度,二道是判断平衡二叉树,三道是快排。都是手写代码,没有bug,聊聊简历,然后她问:hr怎么跟你说的?我回答,邮件上说是叫我们回去等通知,看15号还有没有三面。她说:如果你过不了我这关的话就没三面了。我倒吸口凉气啊~心想能不能过您还不知道吗。她发现安排上我下午还有个面试官,于是叫我等等,她帮我找另外一个面试官。其实总的来说这位大姐人真的不错,只是刚开始我引导错了,哎,算自己作死吧!叫完第三个面试官她问我有啥要问她的。我还是老问题,问问她是干啥的。她说是做云语言处理的,可以认为是微软的siri。所以我才知道她有控制的背景。

第三个面试官是个男的,人也不错,一进来就说:我现在特别想做个游戏,您别紧张啊,就一个游戏呵呵。我说,可以啊。他说:我现在脑子里想了个东西,名词,两个字,你随便问我什么问题,我只能回答是和否或者可是可否,给你二十个问题的机会把我想的问出来。这种游戏以前见网上有人玩,我想了想就开始问了。

请问是吃的吗?(现代人想的一般就吃的和用的)

是 (作为一个资深吃货,听到这个回答信心倍增)

那请问是植物上生长的吗?(吃的不就分素的和荤的么)

是 (啊哈哈,太幸运了)

那请问是一种水果吗?(素的不就蔬菜水果么)

是热带的吗?(水果热带的比较多)

硬吗?(呵呵,这个问题其实问的挺牛的)

你是说有没有那壳吗?

我会,嗯算是吧

可以算硬吧!

我问:是菠萝吗?

哈哈是的,就是这个。

好吧我第一题算是过了,接下来他又开始要玩游戏了,实现魔方。设计数据结构和操作方法。这个大家可以自己想想,手写代码。

然后就回来等通知。隔一天就等到了三面通知,三面相隔时间比较久,所以等的很揪心。一直以为技术面结束了,所以准备了不少非技术面的问题。结果那天去面试官叫做完自我介绍就开始问算法了。我问他,还是技术面吗?他说,对!问了两个问题,第一个是:一个一千个节点的链表,随机抽取50个。这个问题可以用水库抽样,也可用另外的办法,建议大家弄懂水库抽样的证明过程,他问我,推半天没答上来,比较尴尬。第二个问题是字符串压缩的问题,就是将 aabb压成2a2b,有非法字符得过滤。写完之后面试官确认代码没问题然后就说:大数据怎么办?字符串长度超过整形,连续a的个数也超过整形。我说连续a超整形的话不用大数解决的办法可以是MAXINTaMAXINTaLEFTa的方式,虽然不是完美压缩但这样解压过程也会简单。面试官不鄙视这个解决办法。其实大家在回答面试官的题目时可以主动想到大数据问题。这样是可以给你加分的。

面完第三面感觉不是很好,因为有些回答或设计回来想想真的很naive!总的来说基础扎实的话是肯定没问题的!我就是很多该知道的不知道结果出了很多汗,哎~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值