微软cmd暑期实习提前批上岸经历

一共有三次面试,每次45min,一面和二面为平行面试,根据两次结果来决定是否进行终面,终面通过即上岸
面试是网络面试,使用的平台是微软的Teams
自我介绍中文即可
算法题题目都是英文

一面

自我介绍

  • 简短而全面,把自己过去经历、现状、个人品质、选择微软的理由讲一讲

项目经历

  • 讲讲过去的项目
  • 从项目中学到了什么

八股文

  • Java的反射

算法题

  • LeetCode283 移动0
    https://leetcode-cn.com/problems/move-zeroes/
    这道题其实很容易做,但是面试官要求我用On时间复杂度,不借助额外空间来做。
    我虽然记得这道题的最优解法确实符合要求,但是是很久之前做的,怎么做就是想不起来。在这题上磨了半个小时才做出来,我感觉考官也不是很满意的样子

提问环节

  • 问问面试官想问的问题

二面

自我介绍

项目经历

  • 讲讲过去的项目

八股文

  • Java的特点
  • Java的运行时多态与编译时多态
  • Java的类加载过程
  • 什么是双亲委派机制
  • 计算机网络中的七层结构是什么
  • 每一层负责的功能
  • HTTPS是基于什么协议的

算法题

  • LeetCode163 Excel表列名称
    https://leetcode-cn.com/problems/excel-sheet-column-title/
  • LeetCode171 Excel 表列序号
    https://leetcode-cn.com/problems/excel-sheet-column-number/
  • 画一下上面的流程图,我用visio靠共享屏幕分享给考官

提问环节

  • 问问面试官想问的问题

终面

自我介绍

项目经历

问得很细,不仅会问常见的问题,还会根据你的介绍,来反问你要为什么这么做,考官看我大学期间做个一个很久的项目,就问了不少,这部分因人而异。最后还让我用英语介绍了项目,这个没准备,答得并不好

应用题

做一个射点球的小游戏
电脑每次会随机出0、1、2,玩家输入三个中的一个,比较两个数字来确定输赢;
这个功能实现之后,以此为基础,射门方向即数字,进行适当的编写来实现计分;
最后把游戏封装好,进行多局游戏,判定输赢。
这道题不要求实现有多细节,只要把思路写出来即可

你可能感兴趣的:(微软cmd暑期实习提前批上岸经历)