微软苏州STCA SWE Intern 面试过经

微软苏州STCA SWE Intern 面试过经

本人东南某省末流985计算数学专业,通过师兄内推投递微软苏州STCA SWE Summer Intern,经过两轮面试最后拿到了offer,现在将面试准备和面试过程与君分享!

面试准备

  • 简历:中英文简历各一份,着重介绍项目经历,具体写出自己在项目中的贡献,对程序时间,空间复杂度的优化,遇到的难题是如何解决的这些。 有些同学会觉得自己简历无物可写(大佬除外),我觉得这是很正常的,因为毕竟只是本科生,所以尽可能将自己做过的比赛,大作业这些写上去也是足够的。面试官更关心的是项目背后反应的你的能力!
  • 刷题:Leetcode的easy–medium难度的题目,内容至少包括基本的数据结构,即二叉树,链表等。在二面,三面还会涉及一些较难的medium题目,内容涉及动态规划,并查集,拓扑排序,尽量保持每天5-8道题目的训练量
  • 面试官有可能会用英文!
  • 代码风格要好,注意回车,空格的使用,变量名的命名要符合规范(参照Leetcode的模板)

面试题目

一面

实现一个文件夹内容显示机制,即以一个树状形式展开,首先显示当前文件夹下内容,然后显示子文件夹下的全部文件,如图示

C:\
 a.mp4
 b.mp4
 user:\
  c.rmvb
  d.jpg
  myfile:\
   test.text   

以上只是一种可能的实现方式,也可以先输出文件再输出文件夹内容,其实就是一个简单的宽度优先搜索,但是会要求使用非递归实现。

给定这样一个二叉搜索树,二叉树中节点有节点值和三个指针,分别指向左右子节点和父亲节点,现在给定一个二叉树节点的指针,请找到二叉树中比当前节点值小的节点中节点值最大的节点

struct{
	TreeNode *father,*left,*right;
	int val;
}TreeNode;	

这道题目就需要对二叉树机制有深刻的认识,注意只给定了当前节点的指针,没有二叉树根节点的值,因此要注意边界情况的考虑。

Hint:若有左子树,则目标节点在当前节点的左子树中,若无左子树,则在一个离当前节点最近的父节点的左子树中。

二面

面试题目:当前有一个正整数组成的数组,和一个正整数的target值,现在要求从数组中删除一些元素,使得无论怎样选取数组中的元素,使他们彼此按位或的结果不等于target值,求要删除的元素的最少的个数

Hint: 不需要深搜,可以从按位或本身出发,考虑元素的删除与target的关系

面试心得

Microsoft STCA的面试过程是我经历过的最人性化的面试,只要你愿意主动交流,面试官会引导你思考,不会看着你无谓的挣扎。从我与面试官的交流来看,他们更关注的是你的自主思考能力,代码风格和性格。

  • 对于自主思考能力,当你给出一个OK的代码时,他们会要求你思考可能存在的问题,优化空间这些,你有靠谱的想法后就可以与他们交流,如果不够好他们也会引导你,但一定要体现自己的思路,不能依赖面试官!
  • 代码风格:整齐的换行,空格的使用,基于英文单词而不是拼音的变量命名应该足够
  • 性格:面试官喜欢主动的,积极沟通的candidate,这是一个能够融入团队的员工必须具备的特质,如果你运气好,他们还会和你开玩笑来环节你的紧张,真的是非常nice的面试官!

总结一下:微软的面试经历很好,面试官很nice,要求也会相应高一些(当面手撕代码,时间在一小时内),欢迎各位大佬投递!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值