【微软】C++岗-暑期实习面经(已入职)

岗位:DevDiv开发岗暑期实习生,上海紫竹
面试时间:2022.1.17—2022.1.25,1.30意向书,2.10offer。

一面:
算法题:给定两个有序序列,分别用数组/链表的方式排好序。并设计测试用例。
测试用例有:单序列为空,双序列为空等

二面:
算法题:给定一个5*5的表,删除联通块内点数>=4的所有联通块,设计测试用例。
BFS、DFS都可以。测试用例有:某些点错误输入,二维数组值不对等。

三面:
思维题:4亿个文件,如何快速建立索引。
考场回答了两个方法:

  1. Trie树结构建立文件夹。
  2. 分块算法,每块独立简历索引。
    面试官喜欢前面的算法。不过他最想要的应该是基于规则存在硬盘,用游标索引。

时间有点久远了,只记得了一些面试的算法题,凑合看看。