【面经】微软苏州+腾讯PCG

最近刚完成微软苏州的面试,微软面试体验非常的好,微软办公楼也很漂亮。
这次面试完成后相当于我的实习也尘埃落定。这期间在牛客网上看了不少面经,也来回馈一下。

微软苏州

微软从网申、笔试再到面试,均通过邮件发送通知,邀请现场面试会负责来回路费。

面试前一周邮件通知3.23下午3点面试,期间HR还电话联系最终确认了一下。

提前半小时签到,3点带我们一批人(大概十几个)上楼,稍等不多久面试官就来挨个叫了。

15.00 - 15.40 一面

简单自我介绍之后聊了两句就开始做题了。好像问了一下 Java 反射机制。

第一题是按序输出格雷码。输入的参数是格雷码长度N。

刚上来可能紧张,没什么思路。面试官问了我一下,就提示我是不是可以从前一个序列中找到规律。我一下子反应过来,就跟他说了我的想法。

一般在交流后如果觉得你的思路没问题,就开始在白板上写代码。要求是能运行的代码。

第二题是最长递增子序列。Longest Increasing Subsequence - LeetCode
我首先想到动态规划方法,就跟面试官说了一下。他说可以的,你想一下方程吧。
想好后和他交流了一下,这次没让我写代码,但让我继续优化。不过这次始终没想起来。

16.00 - 16.50 二面

二面的面试官非常和蔼,上来先英文自我介绍了一下,他说是2分钟左右。
因为我自我介绍中提到了Java,于是他开始问Java的知识,包括GC、运行时栈帧、与C++相比有何不同等。
也就几分钟之后开始做题。这次题目是求二叉树中任意两点形成的路径上节点(每个节点有个值)之和的最大值。
我想到方法后也是先跟他确认,然后开始写代码。写的时候我还问他节点值是否可能为负。
写好代码之后他会仔细看代码。(一面面试官也很仔细)几乎是一行一行地读。
这次读代码解释代码的时间比较久。就没有第二题。

17.20 - 18.20 三面

三面应该是个Leader?也是先聊天,还说之前去南大宣讲我记不记得他。哈哈,我说你这么一说我才想起来。
他就空着手过来,不像一二面面试官(顺带一提,二面面试官用的 MacBook + macOS)。
就闲聊了几句,我就记得问我觉得自己的优势是什么。然后问了前两面问了啥题,然后开始做题。
这次这个题目罗里吧嗦的:
有三个转盘(A-Z),处于某一个状态start,比如MSF。求出将start转到另一个状态target所要转动转盘而形成的字符串序列。比如MSF->OFC:[MSF,NSF,OSF,OSE,...,OFC。此外,有另一个参数BlockList,是个字符串列表,输出的序列不能包含BlockList中的字符串,即转动时不能经过这些状态。
问我有没有问题他就出去了,我就开始写,我就组合了一个BFS和递归写了一个,有点乱,白板上也不好改。没过多久他就回来了。开始也像前两面一样逐行读代码,解释。我也不知道对不对🤦‍♂️。看他的表情也不知道对不对。
不过这次因为快到下班时间了,就很快结束了。

三面结束后出去没多久(大概2分钟)HR就过来跟我说通过了,但是可能还要后续比较,回去等邮件通知。

腾讯PCG

这个时间过去的比较久,我就根据手里当时记得几个关键词回忆一下。

3/13 一面

  1. C/C++
    1. C语言结构体字节对齐
    2. 申请空间、释放空间
  2. Java
    1. 列举异常
    2. 反射 私有属性能否修改
    3. 继承 私有属性是否继承
    4. 网络编程
  3. Android
    1. 四大组件。重点讲讲Broadcast
    2. Layout
    3. 实现微信底部导航栏用到什么。
  4. 智力题:五条线连十个点。(五角星)

其他就是聊了一下项目。

3/18 二面

一面当晚打电话约二面时间。二面面试时间长一点,什么都问,太可怕了。

  1. 计算机体系结构
    1. 虚拟地址空间
    2. 内存泄漏和内存溢出
    3. 线程和进程/多线程和多进程
  2. Java
    1. volatile 和 Lock
    2. ArrayList 和 Vector
    3. hash
    4. 网络编程
  3. 网络
    1. HTTP 协议
    2. 报文头的几个字段
    3. 断点续传
    4. socket
    5. ipv4 枯竭
  4. 设计模式
    1. 内聚 耦合
    2. 单例模式
  5. 数据库
    1. 几个 SQL 语句
    2. 事务
  6. 其他
    1. git 命令
    2. 简历中项目里的问题

最后还有好几个智力题(搞不懂是干嘛的)。倒水、找劣质硬币、切金条。

3/26 三面(加微信视频)

先来电话约时间,然后加了微信视频面🤦‍♀️。
这一面印象不是很深,几分钟聊了一下项目。
然后就问了C/C++的区别,C++/JAVA的区别。还有个什么 extern "C" 是干嘛用的。
还有一些经典问题:TCP三次握手四次挥手。JAVA动态绑定的问题。C++虚函数的问题。
然后给了一个问题:怎么实现对 8bit 二进制码是否为 “4个1,4个0” 的判定。时间复杂度一步步优化。这应该是编程之美上的一个以空间换时间的问题。
这一面比较轻松。半小时结束。

两天之后HR面。再两天之后OFFER。

#腾讯##微软##面经##实习##C++工程师##Java工程师#
全部评论
转盘那个题咋做呀😶
1 回复 分享
发布于 2020-02-22 19:25
大佬我和你一批面的微软苏州,所以你拿到offer没😂
点赞 回复 分享
发布于 2019-04-26 09:19
大佬,我也想去微软
点赞 回复 分享
发布于 2019-04-26 10:01
楼主你好,请问下二叉树最大路径和那题怎么做呀?
点赞 回复 分享
发布于 2019-04-26 10:07
请问下微软是内推的嘛,,在哪投呀。。。
点赞 回复 分享
发布于 2019-04-26 10:15
微软员工不用surface吗
点赞 回复 分享
发布于 2019-04-26 16:47
楼主面试微软是Android方向的吗
点赞 回复 分享
发布于 2019-04-29 20:05
楼主去哪里了
点赞 回复 分享
发布于 2020-03-04 18:04

相关推荐

11-18 21:59
门头沟学院 Java
点赞 评论 收藏
分享
13 126 评论
分享
牛客网
牛客企业服务