微软苏州SWE一二三面过经

STCA是一二面平行,过了一个就进lead面。

一面

1.英文自我介绍
2.问了几个JAVA基础问题
3.算法题:设计一个数据结构以O(1)时间复杂度实现4个方法:
void addWordOnce(string word);
void removeWordOnce(string word);
int GetMaxOccurredWord();
int GetMinOccurredWord();
一面题还是比较难的,说了自己的错误思路后,在面试官引导下有了正确(maybe)思路,写了变量定义,第一个方法刚写了两行就断开了白板连接,并且科学上网也连不上。。就口述实现,细节比较繁琐,不写成代码比较容易漏掉情况。一面挂,一是题确实难,二是连不上只能口述也太难受了。。

二面

1.斐波那契数列分析时空间复杂度,问我系统栈压栈顺序,这块我说不太确定,面试官人很好说我下去可以了解一下。
2.拓扑排序:题目类似LC课程表,想好之后把思路说了下,面试官说思路对的,开始写的不是最优,问怎么优化,然后想了一会说出了优化思路,感觉MS比较重视follow up,而不是一上来写最优解。
3.最长递增子序列
都是原题,天不绝我。。

三面

lead面
1.中文自我介绍
2.实习项目问了比较久,比较细,问有没有可以优化的地方
3.JVM垃圾回收一些问题
4.Linux命令 shell语法的一些问题(项目有用到)
5.算法:最大子序和(子数组)
easy题,但是比较经典。
这个我刚开始比较紧张,想着区间dp,说了一下,然后复杂度是O(n2),后面我说我想下效率更高的解法,他说不用返回子数组,只要最大和,我就想到了一维dp,就写了,写完我看可以压缩到O(1),就边说边改。白板写代码corner cases一定要注意,最后还让我写几个test cases。写完面试官很满意。

总结

感觉微软是比较看重你思考优化的过程,思路一定先说出来,面试官认可了再写代码,写完也可以自己写一下test cases。
二三面手撕代码都是原题,只能说我欧气太足了哈哈哈,三面中午面完,下午五点前就出结果了,MS效率还是很高的,HR说三面过了后面就offer审批了。

PS: MS面试属实玄学,我每次看到大佬们的面经都看的怀疑人生,只能说多刷题多总结,不要期望每次都碰到原题,提高自己的算法思维能力才是王道。
PPS: Luck Game

#微软##实习##Java工程师##面经#
全部评论
这就过了?那是真的牛批
点赞 回复
分享
发布于 2020-03-30 17:53
请问进去写c#吗
点赞 回复
分享
发布于 2020-03-30 18:08
百信银行
校招火热招聘中
官网直投
二面撕出来没优化到最优,挂
点赞 回复
分享
发布于 2020-03-30 18:25
楼主今天面的?
点赞 回复
分享
发布于 2020-03-30 18:30
请问面完就通知过了吗
点赞 回复
分享
发布于 2020-03-30 19:24
请问楼主是实习还是全职面试呢
点赞 回复
分享
发布于 2020-03-31 12:01
请问一面那个算法具体是啥情景
点赞 回复
分享
发布于 2020-03-31 14:25
想问一下第一题正确思路是什么啊,怎么能保证4个方法都是O(1)时间复杂度呢
点赞 回复
分享
发布于 2020-04-07 15:19
您好!请问一下 一二面过了一个就能直接进 lead面吗?如果一面就过了,那是不是一共只用面两轮就可以了?感谢回答
点赞 回复
分享
发布于 2020-04-08 16:26
你好,请问面试都是英文么?
点赞 回复
分享
发布于 2020-04-09 11:42
你好 MS offer审批了多久拿到的啊
点赞 回复
分享
发布于 2022-05-27 17:41

相关推荐

8 52 评论
分享
牛客网
牛客企业服务