MS三轮面试总结

之前接到了MS的面试邀请,然后因为要上课当时就回复了在线面试,然后竟然在线面试和现场面试一个时间。

弱的面试有三场,11点、1点和三点,每场大约45-55分钟。

第一轮:自我介绍,然后对方显然是懂ACM的,说ACM的人算法和数据结构没什么问的,就问一些实际问题。问了三个问题,第一个是excel里面的列是A-Z,然后AA-AZ这样的,就是给一个数字,问列号是啥样的。简单模拟...就是列号从1开始要注意转化为26进制的边界处理,第二个是给定一个n,打印出所有x+(x+1)+(x+2)....+(x+y)=n的情况....第三个没让我写代码,就是给了一个什么名称的矩阵,矩阵填充方式是每次一个斜线增加,比如3*3和4*4的矩阵为:

1 2 6        1 2 6    7 

3 5 7        3 5 8   11

4 8 9        4 9 10 12

就是对角线递增or递减填充...然后给定一个k问下标,我的思路是先确定出在哪个对角线,然后可以就得到是这个对角线第几个了然后就得到了位置。

第二轮:饭还没吃完就开始了第二轮(打包带回机房吃的),然后面试官问我打的比赛,然后说起来比赛形式以及比赛题目,让我拿一道题目说一下当时怎么搞出来的。果断拿出来校赛题目,然后说完他问我一个最短路问题,就是每个城市都有地铁站,有直线有环线,问怎么得出乘坐最少的站数以及怎么乘车,建图后最短路搞定...开始忘记输出路径了,后来面试官也只问了怎么去实现,并没有敲代码,然后让我自己想测试数据...最后问我有什么问题要问的吗?我当时说第一次有面试官让我问问题没想好,然后对方说:没事,你可以下一轮问我的同事。中间还问了我当是QT写的2048,问有没有后退和帮助功能吗?我说没有。对方问如果要加后退功能你要怎么加?我说直接把二维矩阵开成三维的,对方显然不满意空间,我说可以直接把每一步修改的信息存到一个结构体内,我返回上一步就拿结构体的信息去修改矩阵。


第三轮:有点困,然后我以为第三轮不是技术面...开始一直和对方聊天,聊我的打算我为啥去搞ACM,理想等等...聊完了对方说要不你谈谈你打比赛做的题目吧,然后我回答的和第二轮一样(不知道会不会被发现扣印象分),然后问了一个两个有序数组查找第k大,我提出了O(k)的思路,让我 自己提供数据,然后对方问有更优化的吗,我当时觉得可以二分,但是二分思路不清晰,就放弃了,接着他问我操作系统,我说不会,他依然描述问题....无语。fork() || fork() && fork() 会产生多少个进程...给我解释了一发fork是啥..

还是没太懂,随便回答了一下放弃了。然后对方问我有啥问的吗?我问了实习生在哪边都干什么,会参与到项目吗?

说是实习生要分完部门,在几个月的时间内把一个项目中抽离的小项目做好...具体语言是js、c#和c++...

问啥时候出结果,说是最迟两周...

静待MS拒绝的消息,然后安心备战省赛...


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值