📜  微软 SDE 实习面试经验(2020 年校园内)

📅  最后修改于: 2021-11-17 09:48:54             🧑  作者: Mango

最近微软来到我们的校园实习。它对CGPA 7或更高的CSE和CGPA 8或更高的EEE,ECE开放。

在线测试:这是在 https://tests.mettl.com/ 上举办的在线回合。有 3 个问题,持续时间为 90 分钟,要获得面试资格,必须至少解决 2 个完整问题和 1 个部分问题。每个学生都有不同的套餐。我的问题是:

  1. 将给定的中缀表达式转换为后缀表达式。主要的问题是在 C++ 中我们得到的是字符数组而不是字符串,所以这就是为什么大多数学生觉得这很困难。虽然我使用了 C++17,其中有一个字符串。
  2. 给定 n 个骰子,每个骰子有 m 个面,编号从 1 到 m,找出得到一些 X 的方法数。X 是当所有骰子都掷出时每个面的值的总和。这花了一些时间,但我使用了递归和记忆,它通过了所有测试用例。
  3. 我们获得了 GP 的第 2 和第 3 届任期。我们需要找到精确到小数点后 6 位的 GP 的第 n 项。除了这个 6 位小数,这个问题是小菜一碟。

我完全解决了 3 个问题,在 104 名学生中,有 48 名被选中进行面试。

第一轮:首先面试官让我做个介绍,为了让我感觉舒服,他问了一些关于我的兴趣爱好的问题。然后我们转到代码部分。他让我打印电话号码中所有可能的单词

虽然我早些时候解决了这个问题,但我还是花了一些时间来构建解决方案。我向他解释了我的回溯方法。他很满意。然后他要求迭代做这个,想了想,我也告诉他迭代一个。

在 48 名候选人中,有 22 名入选第二轮。

第 2 轮:面试以关于我的 DBMS 项目的简短讨论开始,她询问了项目中的一些问题。然后,她给了我一个基于字谜的编码问题。准确地说,问题是:给我们一组字符串,比如“bad”、“tct”、“abd”、“adb”、“cat”、“tac”。然后我需要打印那些 anagram 模式第一次出现的字符串,在这个例子中,输出应该是“bad”,“cat”。最初,我想出了一个蛮力解决方案,并被告知要为此编写代码。后来她告诉优化它。经过一番头脑风暴,我编写了它的优化版本的代码。然后她继续按照难度增加的顺序稍微改变问题。我给出了所有问题的答案。但是为了用优化的解决方案解决问题,我采用了非常复杂的数据结构,她告诉她要简化。不幸的是,我无法使用简单的数据结构来解决这些问题。

两轮的持续时间均为 1 小时,每轮仅提出 1 个编码问题。

在第 2 轮之后,从 22 名候选人中选出了 18 名进行人力资源轮次。

HR 回合: HR 回合为 10 分钟。他问了一些基本的人力资源问题。基本上,他正在检查沟通技巧。之后,他问了 1 个我无法回答的 DBMS 问题。

最终,8名学生获得了实习机会。不幸的是,我不是其中之一。