微软 2020.9.14 面试

今年太惨了,往年不转组的实习生就一轮AA面,今年manager安排手下不转组的实习生在AA面之前还有三轮组内面试,而且连着三个小时……

一面

  1. 自我介绍,聊项目
  2. 编程
    1. 单链表反转
    2. 快速排序
    3. 最接近的三数之和(LeetCode 16)

二面

二面特别巧遇到我实习面试的二面面试官,我直接和他说,他问我的算法题前一次面试都问过了,他还记得我,也记得我当时都回答出来了,所以没有再布置编程题,就聊了聊项目。

三面

  1. 有海量数据,如何设计搜索的数据结构,如何设计搜索顺序,如何使用分布式进行查询(基本上是在面试官的引导下回答出来的,我尽力了,因为真的对分布式不了解)
  2. 找一个数组内满足比左右邻居都小的一个数字(只需要找一个,不需要找全部)
    我第一反应是滑动窗口,面试官说时间复杂度是O(n),能不能有个更小的。我说类似归并排序。他问时间复杂度多少,我脑子一抽直接回答了归并排序的时间复杂度O(nlogn),然后马上反应过来不对,改口说O(logn)。

1015 AA面

  1. 介绍之前的一个深度学习的项目,解决什么问题,用了什么模型,多少训练集测试集,效果怎么样,和其他方法做没做对比,看没看paper
  2. c语言内存泄漏,不用工具,自己如何处理(哈希表,链表)
  3. 编程:二叉树中序后继
  4. 现在实习的项目有什么可以优化的地方,作为一个用户(然后被建议,要扩展自己的工作面和学习面,自己的产品都要使用,不要觉得不是自己的工作就不管后端技术开发)

今年实习前后折腾了好久,为了能转正也折腾了很久……希望可以有个好的结果吧。

原文地址:https://www.cnblogs.com/xym4869/p/13666002.html