微软面经

来源:互联网 发布:像素大逃杀制作软件 编辑:程序博客网 时间:2024/06/01 08:48

微软的面试总算是所有的都结束了,漫长的一个过程。

不记得笔试是什么时候了,好像很久远的感觉。20个选择题虽然做的不怎样,但也算是有备而去吧,而且今年笔试一直很顺利,没什么特别需要总结的。

然后是收到了电话面试的通知,也算是意料之中。不过之前没有经历过电话面试,不太习惯。

说是电话面试,其实是要安装微软的一个客户端,不过那天我的耳机有问题,所以就用电话了,不过面试官还是要求我在他们的软件上写代码。问了几个问题,第一个让我写如何判断一棵树是平衡树,这种数据结构好久没有写过了,不过还算是比较常见的问题,随手写了一个代码,然后是面试官针对代码提出了一些建议,主要是如何把代码写的更简短。然后问了一个问题:给你3,5,7这样三个数,然后问你以这三个数为因子的第k大的数是什么。这个问题之前遇到过,不过忘了做法了。然后面试官就在一直给我提示,一直让我写数字找规律,不过电话面试不习惯,到最后也没有找清楚。我自己提出的一种做法是不靠谱的一种做法。事后想了想,其实很简单的一个问题。第一次电话面试,很不习惯,有点小紧张,小忐忑。而且因为自己表现很挫,所以最后面试官问我有没有什么想说的,我说谢谢你浪费一个多小时来面试我(当时以为必挂,所以这么说了)。

然后就不抱什么希望了。这期间过了腾讯的面试,算是放了点心,对微软也就没有那么遗憾了。结果在一天下午竟然收到了微软的面试通知,兴奋的立马给同学发信息!

今天总算是去参加了微软的面试。感觉微软的面试比较人性化的一点是一天面完,就不用连续好几天每天一个多小了,而是一天几小时就好。

昨天收到电话,把我的面试时间改到了9:00,有点压力了,在光谷,所以七点就得起床,好久没有这么早起床了(所以特别感谢早上电话喊我起床的人)。昨晚给一个已经面完的同学打电话了解了一下情况,他说没有问技术性问题,都是谈人生谈理想,感觉有点奇怪,不过我还是做了点准备。随便翻了几页书,看了看B+树什么的。

早上很早就过去了。计划的时间比较宽,所以8:20到了光谷,然后吃了点东西,去了HR的房间。HR姐姐似乎还没有穿好衣服。

一面的面试官是个中年男人,必须说他让我有点压力。随便看了看我的简历,说我不问你算法什么的了,这些你肯定没问题,我直接问你一个实际的问题。问题是给你在硬盘上的很多个文件,让你从中统计出每个单词和出现的次数。我随便写了一个版本,然后他针对我的版本提了几个问题。然后扯到了多线程问题,然后不会多线程的我用C写了多线程(他要求我瞎编的)。一直到面试结束,都是在讨论这个问题。之后他带我去了下一个面试官的房间。

二面的面试官年轻一点,也没有那么让人望而生畏,不过他说话有点听不清。他让我写了好多段代码,不过第一个就是我很熟悉而且写了很多遍的区间合并问题,第二个是链表合并,第三个是关于概率的问题,第四个是随机数的问题,第五个是计算几何的问题。好像还有其他的,记不清了。他问了很多问题,不过都是我很熟悉,所以这个面试相对很轻松。之后扯到了STL,说起了vector,这个我前面blog中总结过它的内存分配问题,所以扯的感觉很不错。时间差不多了,就这样愉快的结束了二面。

总结起来:一面很纠结,二面很愉快。最终的结果,静候。

再次总结一点经验:

1,之前说过对于不会的问题一定要老老实实说不会,这个还是要保有的习惯,不过不同面试官有不同喜好,有些面试官就是喜欢你扯,他也会提示你扯,他希望看到你在不会的情况下能提出什么,甚至是能提出什么问题,能想到什么需要掌握的知识。所以面试的时候一定要揣摩好面试官的心思。老实必须有,但也要有瞎编的能力(当然不能编的没有根据)。

2,对于自己擅长的问题,可以适当多说点,只要面试官没有阻拦你说下去。因为面试的时间基本都不会超过一小时很多,你把会的说的越多,意味着能问到的不会的问题就越少。

面试结束,就什么都不想了,静候结果。明天去签腾讯的offer。

补充一句闲话:这个blog地址知道的熟人不多,也相信认识的人不会看到这篇博客,但还是真心祝愿那些一起挤公交,一起挤地铁,一起吃牛肉面,吃路边鸡蛋灌饼的兄弟姐妹们都能找到心仪的实习!也感谢早上七点电话叫我起床的人!

对想说的人说声:晚安!

原创粉丝点击