微软2022暑期实习二面面经
总体来说,今天比昨天顺利一点。面试官是位小姐姐,讲话很温柔。
自我介绍
中文自我介绍,自报家门,做过的项目。
项目和八股
八股主要还是根据项目问的,所以项目有关的常考的知识点最好要会。
- 项目是我全部自己做的吗,还是其中一部分;
- 用的什么技术框架;
- 讲一讲Hibernate;
- 了解数据库的索引吗;(啊啊啊这个昨天就被问到了我昨天还特意看了一下,结果今天不知道怎么的嘴抽了说自己不太了解,面试结束后真想给自己一个大嘴巴子)
- 了解数据结构吗,说一下快速排序;(快排yyds啊,昨天问今天又问)
- 讲一下多态;
上面的问题基本上都答出来了,要比昨天好一点。
算法题
一个字符串数组,里面每个元素都是文件路径,如果某一个路径是另一个路径的子路径,那么将其删除。
如s = {"/a","/c/d","/c/d/e","/a/b","/c/f"}处理后变为{"/a","/c/d","/c/f"}。
题目一上来有点紧张,不知道怎么做,先说了用双重循环暴力解决的话复杂度有点高。我说可以用树的结构来做一下,面试官说思路可以但是实现起来会比较复杂。说实话我也不清楚最优的解***是什么,就问了一下可以提示一下最优的思路吗,面试官让我思考一下子路径和父路径的特点,我说子路径长度更长而且父路径是子路径的一个前缀。最后采用的方法是现对数组进行字典序排序,然后用双指针滑动窗口来选择留下的字符串。
代码写出来之后有bug调了好一会,最后也成功运行了。
问问题
问了一下面试官所在的部门负责什么业务,然后就结束了。
总体感觉
感觉自己特别幸运,两次遇到的面试官都很nice,很亲和。无论最后结果怎样都很开心有这两次的体验。
#微软暑期实习##微软##面经#