📜  摩根士丹利面试体验(校内)

📅  最后修改于: 2021-11-21 06:09:31             🧑  作者: Mango

当摩根士丹利的第一轮(能力测试)被安排时,我开始准备 DSA 准备面试,这才大约 1-2 个月。在这 1-2 个月里,我一直在参考 GfG 上最受欢迎的面试问题,同时还参加了在 Codechef 上进行的竞赛。回到能力倾向测试,测试包括 3 个部分-

  • 能力部分(10 个 MCQ 问题) :基于能力的一般问题,测试您的数学推理能力。这对我个人来说是最难的部分,因为我没有特别准备这类问题,而且分配的时间很少。
  • 调试部分(7 题) :首先我们必须从 C、C++、 Java选择一种语言。然后,我们得到了 7 个包含逻辑或语法错误的代码片段,我们必须纠正这些错误并通过给定的测试用例。这部分很简单,我可以在分配的时间里解决 7 个问题中的 4-5 个问题。
  • 编码部分(3 题) :编码问题属于中等水平,因为任何能够解决最受欢迎的面试问题的人都能够解决所有这些问题,但在规定的时间内解决才是真正的问题。但是,由于时间限制,我只能完全解决 1 个问题,并且设法通过了第二个问题的一半测试用例。第一个问题是非常基本的数学相关问题,简单的蛮力足以通过所有测试用例。我们得到一个数字作为输入,我们必须找到可以使用给定数字的数字生成的最小数字(不是从零开始)。第二个问题基于标准 DP 问题——最长公共子序列 (LCS)。唯一困难的部分是弄清楚这是一个基于 LCS 的问题。最后一个问题是基于树的广度优先遍历,这也很容易,但我没有时间尝试这个问题。

123 名学生参加了考试,其中 12 人入围了进一步的面试。

第一轮面试:

面试开始时对我的项目和与 API 相关的问题进行了一些讨论,因为我在我的项目中使用了 API。然后面试官问我精通的数据结构,我回答说数组,Hashmap,栈,队列。

作为我回复的后续,他问了一些关于Hash Map和碰撞的理论问题。这很容易,所以我回答正确。然后,他给了我一个关于堆栈的编码问题,但只问了我将遵循的方法,而不是代码。问题是为一个可以包含多种括号类型的表达式实现一个括号检查器。我提出了一种似乎正确的方法,但后来他给了我一个失败的边缘情况。在给出了另一个失败的方法并且他给了我一些边缘情况的提示之后,我终于找到了正确的解决方案,他被说服了。

然后他给了我一个关于矩阵的螺旋遍历的问题,但是在给我这个问题之后,面试官在他的地方遇到了一些紧急情况(因为这是一个虚拟面试)。所以我被告知离开电话并等待一段时间。与此同时,我已经准备好回答他给我的那个问题:-)。大约半小时后,我的采访继续,他只是问我方法,因为他知道我可能已经准备好了答案。

他给我的下一个编码问题是从电话号码中找出所有单词的排列,这是一个非常标准的 GfG 问题。我被要求为这个编写代码,我以某种方式使用递归进行了管理。最后,他又问了1-2道中等水平的问题。

面试第二轮:

这次采访再次以讨论我的项目开始,但与之前的项目不同。这次面试就像是Tech + Behavioral的结合,主要问了一些基于情境的问题,比如如果你的队友因某种原因拒绝工作,你会怎么做,而且你的截止日期快到了。他没有问我任何与 DS Algo 相关的问题,但他问的一些技术问题与 DBMS、系统设计(例如设计像 WhatsApp 这样的应用程序)等有关。面试官知道我是 TY 学生,所以他没有问非常重视系统设计,但同时,我尽我所知回答了他的问题。

两轮面试都在同一天进行,两轮之间的间隔为 1-1.5 小时。结果一天后公布,幸运的是,我被选中了。两位面试官都非常友好,对我来说更像是一次正常的谈话而不是面试。

一些最后的提示:

  • 如果您对特定主题一无所知,只需说出来!
  • 大声思考,将您的想法正确地传达给面试官。
  • 充分了解您在简历中包含的项目。
  • 保持自信,保持冷静并保持积极的态度。

感谢您一直阅读到最后!! 🙂