2019微软亚研院实习面经(工程创新组)

更新:已凉


其他面经传送门:https://blog.csdn.net/zxwsbg/article/details/103499632


Team 1

找学姐内推的创新工程组,隔了三天打电话给我约了面试。

打电话后发了邮件,链接里面是一个远程共享屏幕的网页,我写代码他能直接看到。

先问了我大一那个项目,差不多讲了十分钟,对面感觉不是很满意(一方面过的时间有点久,一方面确实水)。然后就开始写代码。

题目一

给定一个字符串,让你从中间提取出一个合法的IP地址,存在vector里面返回,如果没有的话返回一个空的vector。

思路

感觉没啥好做的,一眼标程。花了差不多10分钟写完了,各种小细节也都处理到了:字符串连续输入.,IP地址超过255,输入空字符串等等。面试官说我代码思路很清晰,没有啥大问题。


题目二

先问我有没有玩过黑白棋,我说没有,他说那贪吃蛇玩过吧。让我写一个贪吃蛇的主要逻辑和部分函数,以及各部分用什么数据结构维护。

思路

之前没做过,基本都是现想的。

  • 棋盘,面试官说了10*10,所以就直接拿二维数组存了(美其名曰邻接矩阵)。
  • 蛇,考虑到蛇的尾巴是会不断延长的,所以思考了半分钟,决定拿vector >来存。
  • 豆子。直接找两个int表示横纵坐标
    然后写了一下主要逻辑。。因为挺简单的,就顺手写了出来。面试官还要求我写了一下移动函数的逻辑,没啥问题也直接写出来的:蛇身体的一个部分一定是移动到它前面一个部分上次所在的位置,这个还是想了两分钟才想出来的,再单独判一下头的移动。

总结

说我两道题代码写的都挺好的,思路很清晰。

给我提了个建议:工程和acm不一样,变量名命名要规范。尽管我尽量规范化了变量名的命名,但是在命名豆子坐标的时候,直接习惯性的int sx,sy;。。

然后问我有啥问题,我问他们那主要做啥:就给我介绍了一下。接着问总共几面,他说因为实习,就这一面,说一周内结果会发通知告诉我。


Team 2

update。就在我等第一组的消息时,创新工程组的另一波人给我打了电话,又约了一场面试。

题目

叙述的时候稍微简化一下题面。

给定一个n*m的矩阵,矩阵中每个值表示格子的高度,矩阵的四周都可以看成无穷低。问假如每个格子都均匀的一直下雨的话,到了最后稳定状态,哪些格子会蓄水。

思路

先理解错了20分钟题意。正确理解后考虑求联通块,连通块的外围是比它高的一圈。如果一个联通快紧邻边界,那么它就是不能蓄水的。

想了半天也没想好怎么写。面试官提醒我可以考虑从一个格子出发,顺着比它矮的地方走,如果能走的边界就说明不能蓄水,否则就可以蓄水。

他一说我就想明白了(脑抽无解),然后花了5分钟写了个爆搜。因为时间很紧,就无脑两次DFS,第一次搜索一个格子是否能到达边界,第二次给这个格子的联通块全部打上标记(标记是否能到达)。

总结

一言难尽,这次面崩了。

面试官很和蔼,还问了我一些有没有做过多人项目,git合并分治遇到冲突怎么办。由于我一直是把git当远程仓库用的,遇到问题都是直接强制推送本地分支的(哭)。还问我有没有做过面向对象的项目,我:做过xx管理系统。

然后问了一下能实习多久(逃课也去实习啊),介绍了一下他们的项目。以及我顺便问了一下上组是啥情况,说有很多candidate在面。

感觉自己凉了,安心上课叭- -

#微软##实习##C++工程师##面经#
全部评论
是英文面吗?
1 回复 分享
发布于 2019-12-19 12:23
T2接雨水II
1 回复 分享
发布于 2020-01-12 02:52
没过的话有通知吗?
点赞 回复 分享
发布于 2019-12-11 22:31
创新孵化组
点赞 回复 分享
发布于 2019-12-16 19:59
本科吗?
点赞 回复 分享
发布于 2020-01-08 20:35
team2leetcode 原题
点赞 回复 分享
发布于 2020-01-12 01:03
请问微软要求英文简历吗
点赞 回复 分享
发布于 2020-01-14 14:55
加油,你可以的
点赞 回复 分享
发布于 2020-01-16 21:05

相关推荐

4 34 评论
分享
牛客网
牛客企业服务