微软面经 社招

本人一年工作经验,面的是苏州微软sde。

phone screen面

一道场景题,给定一个字符串文本和一个list<string>,两者的信息量都非常大,要求从文本中检索出,存在于List中的字符串的位置。
第一反应是字典树,但是好久都没有写过了,于是说了一个暴力匹配的方法,把List中的string都存储在map里。
面试官让优化时间效率,我提出将List中所有string的子串(index从0开始)存在map里。
面试官又让优化空间效率,那就只能用字典树了。。最终还是没逃掉,气死我啦。写出来之后稍微聊了几句,当时觉得我应该是通过了。

过了几天之后,hr打电话给我说我PS面通过了,要给我安排接下来5轮的面试。其实听到有5轮的时候,内心是比较崩溃的。

一面

总结下题意:有个map<string,string>,然后给定一个string,要求把{}之间的string通过map映射成另一个string。注:{}之间存在嵌套关系。
当时因为考虑的不周全,我给出的解答只能cover部分样例。后来跟面试官沟通有了思路后发邮件到他邮箱。

二面

第一题:二叉树的后序遍历还是啥,记不太清了。这题可以秒杀。
第二题:求波兰表达式的结果。我一直想着要把波兰表达式转成逆波兰表达式,面试官希望我对这个表达式直接求解。虽然我最后按照他的思路把题做出来了,但是能感觉到在沟通上并不是那么地顺利。
总结一下这轮面试考的题还是比较简单的,他给了我no hire确实有我自己的原因在。

三面

开场问了项目经历,其实这个项目我在之前面试其他公司的时候都有跟面试官讲过,(只是一个小项目没有为公司带来什么大的收益),但是只有这位面试官仔细地分析了实现细节,并且get到了我的设计思路,当时内心真的感觉有受到尊重。

(面试过程中有感受到面试官深厚的算法功底)

考了个思维题,给定一个字符串,问能不能通过重排列,使得相邻的字符之间互不相等。
比较快地发现了数学规律,比较快地写出了代码,这轮面下来当时觉得应该是通过了。

四面

这轮没有考察算法题,就不详细展开了,但是考了网络相关的知识。无奈我网络基础比较薄弱,而且还没有准备。。面试官的题出得挺好的,可惜了。。

~~分割线~~ 

一天没吃饭,连着面了4轮(车轮战 ),我感觉我整个人都升华了(还能顶得住 )。其实我的三面是非常关键的一场面试,如果这轮评价也很一般,可能就没有后续的面试了,但是我身处其中完全感受不到,也是有相当大的运气成分在里面的。

虽然五轮面试流程已经走过去了,但总体还是不太稳的,成败就在最后一轮了。

AA面

开场面试官就让我解释为什么一、二、四面的面评非常一般。
😃 我当然就老老实实地解释了。。
这轮也没有考算法题,本来都做好了手撕代码、背水一战的准备了。
简单问了项目经历,学习方法,以及考察了价值观。

我个人有体会到四面和AA面问了项目管理方面的经验,但是我在这方面的经验是缺乏的,因为我没有主导过一个项目。确实是我个人的一个短板。最后聊下来,面试官大概觉得我还是比较potential的,所以综合评价下来给了offer。

最后,感谢微软极负责任的hr,感谢身边支持我的朋友,感谢自己~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值